/[cln]/ChangeLog
ViewVC logotype

Contents of /ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.226 - (hide annotations)
Sun May 25 08:12:47 2008 UTC (5 years ago) by haible
Branch: MAIN
CVS Tags: HEAD
Changes since 1.225: +8 -0 lines
Remove support for K&R C compilers.

1 haible 1.226 2008-05-25 Bruno Haible <bruno@clisp.org>
2    
3     * autoconf/floatparam.c: Remove support for K&R C compilers.
4     (main): Check the error status of fclose(stdout).
5     * autoconf/intparam.c: Remove support for K&R C compilers.
6     Fix non-ASCII characters in comments, broken on 2006-12-19.
7     (main): Check the error status of fclose(stdout).
8    
9 kreckel 1.225 2008-04-21 Richard B. Kreckel <kreckel@ginac.de>
10    
11     * src/base/cl_low.h: Fix sparc64 build with -DNO_ASM.
12     * include/cln/floatformat.h: Avoid compiler warning.
13    
14 haible 1.223 2008-04-18 Bruno Haible <bruno@clisp.org>
15    
16     * src/integer/cl_I.h (FN_MSD1_mask, FN_MSD2_mask, FN_MSD3_mask):
17 haible 1.224 Define without tag bits. Fixes a bug in FN_to_NDS on platforms where
18     FN_maxlength > 1.
19     Reported by Richard Kreckel.
20 haible 1.223
21 kreckel 1.221 2008-04-07 Alexei Sheplyakov <varg@theor.jinr.ru>
22    
23 kreckel 1.222 * configure.ac: create subdirectory to hold auto-generated headers.
24    
25     2008-04-07 Alexei Sheplyakov <varg@theor.jinr.ru>
26    
27 haible 1.223 Re-establish 1.2.0 ABI, broken 2008-02-22:
28 kreckel 1.221 * src/float/input/cl_F_readparsed.cc: Add obsolete signature with index
29     args uintL.
30     * src/integer/input/cl_I_readparsed.cc: Likewise.
31     * src/rational/input/cl_RA_readparsed.cc: Likewise.
32    
33 kreckel 1.220 2008-04-05 Richard B. Kreckel <kreckel@ginac.de>
34    
35     * Version 1.2.2 released.
36    
37 kreckel 1.219 2008-04-04 Richard B. Kreckel <kreckel@ginac.de>
38    
39     Re-establish ABI, broken 2008-01-20:
40     * src/float/ffloat/conv/cl_FF_from_float.cc: Add obsolete signature of
41     cl_float_to_FF_pointer.
42     * src/float/dfloat/conv/cl_DF_from_double.cc: Add obsolete signature of
43     cl_double_to_DF_pointer.
44    
45 haible 1.218 2008-03-31 Bruno Haible <bruno@clisp.org>
46    
47     Fix hack from 2008-01-20 that broke on ARM.
48     * src/float/ffloat/conv/cl_FF_from_float.cc (FAST_FLOAT): Remove.
49     (cl_float_to_FF_pointer): Use anonymous union for conversion.
50     * src/float/dfloat/conv/cl_DF_from_double.cc (FAST_DOUBLE): Remove.
51     (cl_double_to_DF_pointer): Use anonymous union for conversion.
52    
53 kreckel 1.217 2008-03-24 Richard B. Kreckel <kreckel@ginac.de>
54    
55     * Version 1.2.1 released.
56    
57 haible 1.215 2008-03-23 Bruno Haible <bruno@clisp.org>
58    
59 haible 1.216 * autogen.sh: New file.
60     * Makefile.devel (build-prerequisites): New target.
61     (all): Depend on it.
62     (EXCLUDE): Also exclude autogen.sh.
63    
64     2008-03-23 Bruno Haible <bruno@clisp.org>
65    
66 haible 1.215 Make "make -jN" work again, broken on 2008-02-23.
67     * src/Makefile.in (ALLOBJECTS_LO): Fix dependency.
68    
69 kreckel 1.214 2008-03-15 Richard B. Kreckel <kreckel@ginac.de>
70    
71     * m4/gmp.m4 (CL_LIBGMP): New macro brings support for --with-gmp=DIR...
72     * configure.ac: ...used here.
73     * doc/cln.texi: Document that new feature.
74     Suggested by Paul Zimmermann <paul.zimmermann@loria.fr>.
75    
76     2008-02-23 Bruno Haible <bruno@clisp.org>
77 haible 1.212
78 haible 1.213 Support for gcc-4.3 snapshots.
79     * autoconf/floatparam.c (check): Change argument types to
80     'volatile type*'. This defeats optimizations of gcc 4.3.0 snapshots.
81    
82 kreckel 1.214 2008-02-23 Bruno Haible <bruno@clisp.org>
83 haible 1.213
84 haible 1.212 Change "make alls" and "make allo" to recurse into subdirectories.
85     * src/Makefile.in (alls-local): Renamed from alls.
86     (allo-local): Renamed from allo.
87     (SUBDIRS_TARGET_ALL): Renamed from SUBDIRS_TARGET.
88     (alls, allo): New rules.
89     (SUBDIRS_TARGET_ALLS, SUBDIRS_TARGET_ALLO): New variables.
90    
91 kreckel 1.214 2008-02-22 Richard B. Kreckel <kreckel@ginac.de>
92 kreckel 1.211
93     * include/cln/integer_io.h (read_integer): Make index args uintC.
94     * src/integer/input/cl_I_readparsed.cc: Likewise.
95     * include/cln/rational_io.h (read_rational): Likewise.
96     * src/rational/input/cl_RA_readparsed.cc: Likewise
97     * include/cln/float_io.h (read_float): Likewise.
98     * src/float/input/cl_F_readparsed.cc: Likewise.
99     * src/vector/output/cl_GV_number_aprint.cc: Vector lengths are uintC.
100     * src/vector/output/cl_SV_aprint.cc: Likewise.
101     * src/vector/output/cl_SV_number_aprint.cc: Likewise.
102    
103 kreckel 1.214 2008-02-15 Richard B. Kreckel <kreckel@ginac.de>
104 kreckel 1.210
105     * m4/cc.m4 (CL_HAVE_ATTRIBUTE_FLATTEN): More robust definition allows...
106     * src/base/cl_maybe_inline.h (CL_FLATTEN): ...simplification here.
107    
108 kreckel 1.214 2008-02-10 Richard B. Kreckel <kreckel@ginac.de>
109 kreckel 1.209
110     * autoconf/ltmain.sh: Update to libtool-1.5.26.
111     * autoconf/config.guess: Likewise.
112     * autoconf/config.sub: Likewise.
113     * m4/libtool.m4: Likewise.
114    
115 kreckel 1.214 2008-02-09 Alexei Sheplyakov <varg@theor.jinr.ru>
116 kreckel 1.208 Richard B. Kreckel <kreckel@ginac.de>
117    
118     Avoid compiler warning about ignored 'flatten' attribute directive:
119     * m4/cc.m4 (CL_ATTRIBUTE_FLATTEN): New macro...
120     * configure.ac: ...used here...
121     * include/cln/config.h.in: ...defining CL_HAVE_ATTRIBUTE_FLATTEN,...
122     * src/base/cl_maybe_inline.h: ...used to prevent a warning here.
123    
124 kreckel 1.214 2008-02-07 Richard B. Kreckel <kreckel@ginac.de>
125 kreckel 1.207
126     * include/cln/integer.h: Enable modifying operators by default.
127     * include/cln/rational.h: Likewise.
128     * include/cln/sfloat.h: Likewise.
129     * include/cln/ffloat.h: Likewise.
130     * include/cln/dfloat.h: Likewise.
131     * include/cln/lfloat.h: Likewise.
132     * include/cln/float.h: Likewise.
133     * include/cln/real.h: Likewise.
134     * include/cln/complex.h: Likewise.
135     * doc/cln.texi: Document that.
136    
137 kreckel 1.214 2008-02-06 Richard B. Kreckel <kreckel@ginac.de>
138 kreckel 1.206
139     Fix crash in output of huge numbers:
140     * src/integer/conv/cl_I_to_digits.cc: Make erglen uintC.
141     * src/integer/output/cl_I_print_string.cc: Make B_baselen uintC.
142    
143 kreckel 1.214 2008-02-04 Richard B. Kreckel <kreckel@ginac.de>
144 kreckel 1.205
145     Fix cl_F output of more than 2^32 decimal digits:
146     * src/base/string/cl_sstring.cc (cl_sstring): make len uintC.
147     * src/base/string/cl_sstring.h: Likewise.
148    
149 kreckel 1.214 2008-01-23 Bruno Haible <bruno@clisp.org>
150 haible 1.204
151     Allow 64-bit builds on MacOS X 10.5.
152     * m4/general.m4 (CL_CANONICAL_HOST_CPU): Test for x86_64 CPU if
153     "uname -m" returns "i386".
154     Reported by Ron Garret <ron@flownet.com>.
155    
156 kreckel 1.214 2008-01-20 Bruno Haible <bruno@clisp.org>
157 haible 1.203
158     Avoid some gcc warnings.
159     * autoconf/floatparam.c (flipped_double): Use a union instead of a
160     type-punning cast.
161     * include/cln/number.h (union ffloatjanus, union dfloatjanus): Remove
162     declarations.
163     (cl_float_to_FF_pointer, cl_double_to_DF_pointer): Change argument
164     type.
165     (CL_DEFINE_FLOAT_CONSTRUCTOR, CL_DEFINE_DOUBLE_CONSTRUCTOR): Update.
166     * src/float/ffloat/cl_FF.h (cl_float_to_FF_pointer): Change argument
167     type.
168     (cl_float_to_FF): Remove function.
169     * src/float/ffloat/conv/cl_FF_from_float.cc (FAST_FLOAT): Define.
170     (cl_float_to_FF_pointer): Change argument type.
171     * src/float/dfloat/cl_DF.h (cl_double_to_DF_pointer): Change argument
172     type.
173     (cl_double_to_DF): Remove function.
174     * src/float/dfloat/conv/cl_DF_from_double.cc (FAST_DOUBLE): Define.
175     (cl_double_to_DF_pointer): Change argument type.
176     * src/float/lfloat/cl_LF_impl.h (LF_decode): Mark the mantlen_zuweisung
177     assignment as possibly unused.
178     * src/base/cl_low.h (mulu32): Mark the hi_zuweisung assignment as
179     possibly unused.
180     * src/float/transcendental/cl_LF_zeta_int.cc (compute_zeta_cvz2):
181     Remove unused local variable.
182    
183 kreckel 1.214 2008-01-19 Richard B. Kreckel <kreckel@ginac.de>
184 kreckel 1.201
185     * Version 1.2.0 released.
186    
187 kreckel 1.214 2008-01-19 Richard B. Kreckel <kreckel@ginac.de>
188 kreckel 1.202
189     * doc/Makefile.in: texi2html -split_chapter doesn't generate
190     cln_toc.html any more.
191     * doc/cln.texi: Add table of contents in TeX output.
192    
193 kreckel 1.214 2008-01-18 Alexei Sheplyakov <varg@theor.jinr.ru>
194 kreckel 1.199
195     Fix linking problems on some platforms caused by inline/non-inline
196     versions of same functions (obsoletes MAYBE_INLINE):
197     * src/base/cl_maybe_inline.h: New file.
198     * src/base/cl_inline2.h: New file.
199     * src/base/cl_inline.h: New file.
200 kreckel 1.200 * src/base/string/cl_st_make0.h: New file.
201 kreckel 1.199 * src/base/cl_macros.h: Pull in cl_maybe_inline.h.
202     * src/base/string/cl_st_concat1.cc: Use new CL_INLINE macros and the
203     new *_inline functions.
204     * src/base/string/cl_st_concat2.cc: Likewise.
205     * src/base/string/cl_st_concat3.cc: Likewise.
206     * src/complex/algebraic/cl_C_abs.cc: Likewise.
207     * src/complex/algebraic/cl_C_abs_aux.cc: Likewise.
208     * src/complex/algebraic/cl_C_signum.cc: Likewise.
209     * src/complex/algebraic/cl_DF_hypot.cc: Likewise.
210     * src/complex/algebraic/cl_FF_hypot.cc: Likewise.
211     * src/complex/algebraic/cl_LF_hypot.cc: Likewise.
212     * src/complex/algebraic/cl_SF_hypot.cc: Likewise.
213     * src/complex/transcendental/cl_C_acosh.cc: Likewise.
214     * src/complex/transcendental/cl_C_asinh_aux.cc: Likewise.
215     * src/complex/transcendental/cl_C_atanh_aux.cc: Likewise.
216     * src/float/dfloat/division/cl_DF_fceil.cc: Likewise.
217     * src/float/dfloat/elem/cl_DF_div.cc: Likewise.
218     * src/float/dfloat/elem/cl_DF_ffloor.cc: Likewise.
219     * src/float/dfloat/elem/cl_DF_minusp.cc: Likewise.
220     * src/float/dfloat/elem/cl_DF_mul.cc: Likewise.
221     * src/float/dfloat/elem/cl_DF_plusp.cc: Likewise.
222     * src/float/dfloat/elem/cl_DF_zerop.cc: Likewise.
223     * src/float/dfloat/misc/cl_DF_abs.cc: Likewise.
224     * src/float/dfloat/misc/cl_DF_digits.cc: Likewise.
225     * src/float/dfloat/misc/cl_DF_eqhashcode.cc: Likewise.
226     * src/float/dfloat/misc/cl_DF_exponent.cc: Likewise.
227     * src/float/dfloat/misc/cl_DF_idecode.cc: Likewise.
228     * src/float/dfloat/misc/cl_DF_precision.cc: Likewise.
229     * src/float/dfloat/misc/cl_DF_sign.cc: Likewise.
230     * src/float/dfloat/misc/cl_DF_signum.cc: Likewise.
231     * src/float/elem/cl_F_minusp.cc: Likewise.
232     * src/float/elem/cl_F_plusp.cc: Likewise.
233     * src/float/elem/cl_F_zerop.cc: Likewise.
234     * src/float/ffloat/division/cl_FF_fceil.cc: Likewise.
235     * src/float/ffloat/elem/cl_FF_div.cc: Likewise.
236     * src/float/ffloat/elem/cl_FF_ffloor.cc: Likewise.
237     * src/float/ffloat/elem/cl_FF_minusp.cc: Likewise.
238     * src/float/ffloat/elem/cl_FF_mul.cc: Likewise.
239     * src/float/ffloat/elem/cl_FF_plusp.cc: Likewise.
240     * src/float/ffloat/elem/cl_FF_zerop.cc: Likewise.
241     * src/float/ffloat/misc/cl_FF_abs.cc: Likewise.
242     * src/float/ffloat/misc/cl_FF_digits.cc: Likewise.
243     * src/float/ffloat/misc/cl_FF_eqhashcode.cc: Likewise.
244     * src/float/ffloat/misc/cl_FF_exponent.cc: Likewise.
245     * src/float/ffloat/misc/cl_FF_idecode.cc: Likewise.
246     * src/float/ffloat/misc/cl_FF_precision.cc: Likewise.
247     * src/float/ffloat/misc/cl_FF_sign.cc: Likewise.
248     * src/float/ffloat/misc/cl_FF_signum.cc: Likewise.
249     * src/float/lfloat/division/cl_LF_fceil.cc: Likewise.
250     * src/float/lfloat/elem/cl_LF_compare.cc: Likewise.
251     * src/float/lfloat/elem/cl_LF_ffloor.cc: Likewise.
252     * src/float/lfloat/elem/cl_LF_minusp.cc: Likewise.
253     * src/float/lfloat/elem/cl_LF_plusp.cc: Likewise.
254     * src/float/lfloat/elem/cl_LF_to_I.cc: Likewise.
255     * src/float/lfloat/elem/cl_LF_zerop.cc: Likewise.
256     * src/float/lfloat/misc/cl_LF_abs.cc: Likewise.
257     * src/float/lfloat/misc/cl_LF_digits.cc: Likewise.
258     * src/float/lfloat/misc/cl_LF_eqhashcode.cc: Likewise.
259     * src/float/lfloat/misc/cl_LF_exponent.cc: Likewise.
260     * src/float/lfloat/misc/cl_LF_idecode.cc: Likewise.
261     * src/float/lfloat/misc/cl_LF_precision.cc: Likewise.
262     * src/float/lfloat/misc/cl_LF_shortenrel.cc: Likewise.
263     * src/float/lfloat/misc/cl_LF_shortenwith.cc: Likewise.
264     * src/float/lfloat/misc/cl_LF_sign.cc: Likewise.
265     * src/float/lfloat/misc/cl_LF_signum.cc: Likewise.
266     * src/float/misc/cl_F_abs.cc: Likewise.
267     * src/float/misc/cl_F_digits.cc: Likewise.
268     * src/float/misc/cl_F_eqhashcode.cc: Likewise.
269     * src/float/misc/cl_F_exponent.cc: Likewise.
270     * src/float/misc/cl_F_idecode.cc: Likewise.
271     * src/float/misc/cl_F_precision.cc: Likewise.
272     * src/float/misc/cl_F_sign.cc: Likewise.
273     * src/float/misc/cl_F_signum.cc: Likewise.
274     * src/float/sfloat/division/cl_SF_fceil.cc: Likewise.
275     * src/float/sfloat/division/cl_SF_ffloor.cc: Likewise.
276     * src/float/sfloat/elem/cl_SF_compare.cc: Likewise.
277     * src/float/sfloat/elem/cl_SF_minus.cc: Likewise.
278     * src/float/sfloat/elem/cl_SF_minusp.cc: Likewise.
279     * src/float/sfloat/elem/cl_SF_plusp.cc: Likewise.
280     * src/float/sfloat/elem/cl_SF_uminus.cc: Likewise.
281     * src/float/sfloat/elem/cl_SF_zerop.cc: Likewise.
282     * src/float/sfloat/misc/cl_SF_abs.cc: Likewise.
283     * src/float/sfloat/misc/cl_SF_digits.cc: Likewise.
284     * src/float/sfloat/misc/cl_SF_eqhashcode.cc: Likewise.
285     * src/float/sfloat/misc/cl_SF_exponent.cc: Likewise.
286     * src/float/sfloat/misc/cl_SF_idecode.cc: Likewise.
287     * src/float/sfloat/misc/cl_SF_precision.cc: Likewise.
288     * src/float/sfloat/misc/cl_SF_sign.cc: Likewise.
289     * src/float/sfloat/misc/cl_SF_signum.cc: Likewise.
290     * src/float/transcendental/cl_F_atanhx.cc: Likewise.
291     * src/float/transcendental/cl_F_atanx.cc: Likewise.
292     * src/float/transcendental/cl_F_exp.cc: Likewise.
293     * src/float/transcendental/cl_F_expx.cc: Likewise.
294     * src/float/transcendental/cl_F_lnx.cc: Likewise.
295     * src/float/transcendental/cl_F_sinhx.cc: Likewise.
296     * src/float/transcendental/cl_F_sinx.cc: Likewise.
297     * src/float/transcendental/cl_F_tan.cc: Likewise.
298     * src/float/transcendental/cl_F_tanh.cc: Likewise.
299     * src/integer/conv/cl_I_from_DS.cc: Likewise.
300     * src/integer/conv/cl_I_from_NDS.cc: Likewise.
301     * src/integer/conv/cl_I_from_NUDS.cc: Likewise.
302     * src/integer/conv/cl_I_from_UDS.cc: Likewise.
303     * src/integer/misc/cl_I_eqhashcode.cc: Likewise.
304     * src/integer/misc/cl_I_signum.cc: Likewise.
305     * src/integer/ring/cl_I_ring.cc: Likewise.
306     * src/rational/elem/cl_RA_minusp.cc: Likewise.
307     * src/rational/misc/cl_RA_eqhashcode.cc: Likewise.
308     * src/rational/misc/cl_RA_signum.cc: Likewise.
309     * src/rational/ring/cl_RA_ring.cc: Likewise.
310     * src/real/algebraic/cl_RA_sqrt.cc: Likewise.
311     * src/real/algebraic/cl_R_sqrt.cc: Likewise.
312     * src/real/conv/cl_F_from_R_def.cc: Likewise.
313     * src/real/elem/cl_R_minusp.cc: Likewise.
314     * src/real/elem/cl_R_zerop.cc: Likewise.
315     * src/real/misc/cl_R_eqhashcode.cc: Likewise.
316     * src/real/misc/cl_R_signum.cc: Likewise.
317     * src/real/transcendental/cl_R_tan.cc: Likewise.
318     * src/real/transcendental/cl_R_tanh.cc: Likewise.
319     * src/base/string/cl_st_make0.cc: Remove obsolete MAYBE_INLINE.
320     * src/rational/misc/Makeflags: Help compiler include cl_I_eqhashcode.cc.
321    
322 haible 1.198 2008-01-15 Bruno Haible <bruno@clisp.org>
323    
324     * doc/cln.texi: Renamed from doc/cln.tex. Add @node lines and @menu
325     lists.
326     * doc/addnodes.el: Remove file.
327     * doc/Makefile.in (${PACKAGE}.texi): Remove rule.
328     (EMACS): Remove variable.
329     (maintainer-clean): Don't remove ${PACKAGE}.texi.
330     Reported by Alexei Sheplyakov <varg@theor.jinr.ru>.
331    
332 kreckel 1.196 2008-01-11 Richard B. Kreckel <kreckel@ginac.de>
333    
334 kreckel 1.197 * include/cln/float.h (cos_sin_t, cosh_sinh_t): Add default ctor.
335    
336     2008-01-11 Richard B. Kreckel <kreckel@ginac.de>
337    
338 kreckel 1.196 Make some functions more memory efficient:
339     * src/float/transcendental/cl_LF_tran.h (eval_rational_series): The
340     evaluation of streamed rational series may profit from shift-counting Q,
341     too. Introduce a template parameter to determine whether shift-counting
342     is to be used or not.
343     * src/float/transcendental/cl_LF_ratseries_pqb.cc: Introduce template
344     parameter.
345     * src/float/transcendental/cl_LF_ratseries_pqa.cc: Likewise.
346     * src/float/transcendental/cl_LF_ratseries_pqab.cc: Likewise.
347     * src/float/transcendental/cl_LF_ratseries_qa.cc: Likewise.
348     * src/float/transcendental/cl_LF_ratseries_qab.cc: Likewise.
349     * src/float/transcendental/cl_LF_ratseries_q.cc: Likewise, added
350     overload for streamed expansion.
351     * src/float/transcendental/cl_LF_ratseries_qb.cc: Likewise.
352     * src/float/transcendental/cl_LF_ratseries_pq.cc: Introduce template
353     parameter, added overload for streamed expansion using shift-counts.
354     * src/float/transcendental/cl_LF_zeta3.cc: Adapt to above changes.
355     * src/float/transcendental/cl_LF_pi.cc: Likewise.
356     * src/float/transcendental/cl_LF_eulerconst.cc: Likewise.
357     * src/float/transcendental/cl_LF_catalanconst.cc: Likewise.
358     * src/float/transcendental/cl_LF_cossin_aux.cc: Likewise.
359     * src/float/transcendental/cl_LF_coshsinh_aux.cc: Likewise.
360     * src/float/transcendental/cl_LF_atanh_recip.cc: Use streamed series.
361     * src/float/transcendental/cl_LF_atan_recip.cc: Likewise.
362     * src/float/transcendental/cl_LF_exp1.cc: Likewise.
363     * src/float/transcendental/cl_LF_exp_aux.cc: Likewise.
364     * src/float/transcendental/cl_LF_ratseries.cc: Removed.
365    
366 kreckel 1.195 2008-01-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
367     Richard B. Kreckel <kreckel@ginac.de>
368    
369     Cater to the fact that g++ 4.3 will use a different naming for
370     the global constructor suffix in shared and static objects.
371     * m4/c++-constructors.m4 (CL_GLOBAL_CONSTRUCTORS): Add test for
372     the global constructor suffix, define CL_GLOBAL_CONSTRUCTOR_SUFFIX_PIC
373     and CL_GLOBAL_CONSTRUCTOR_SUFFIX_NOPIC appropriately.
374     * include/cln/config.h.in: Provide templates to be filled in by
375     configure.
376     * include/cln/modules.h (CL_PROVIDE, CL_REQUIRE): Use
377     CL_GLOBAL_CONSTRUCTOR_SUFFIX_PIC, CL_GLOBAL_CONSTRUCTOR_SUFFIX_NOPIC.
378    
379 kreckel 1.194 2007-12-19 Richard B. Kreckel <kreckel@ginac.de>
380    
381     * m4/general.m4 (CL_CANONICAL_HOST_CPU): Force host_cpu=rs6000 for
382     powerpc64 if userland is 32 bit.
383    
384 kreckel 1.192 2007-12-18 Richard B. Kreckel <kreckel@ginac.de>
385    
386 kreckel 1.193 * autoconf/ltmain.sh: Update to libtool-1.5.24.
387     * autoconf/config.guess: Likewise.
388     * autoconf/config.sub: Likewise.
389     * m4/libtool.m4: Likewise.
390    
391     2007-12-18 Richard B. Kreckel <kreckel@ginac.de>
392    
393 kreckel 1.192 * src/float/transcendental/cl_F_lnx.cc: Make actuallen of type uintC.
394     * src/float/transcendental/cl_F_expx.cc: Likewise.
395     * src/float/transcendental/cl_F_sinhx.cc: Likewise.
396     * src/float/transcendental/cl_F_sinx.cc: Likewise.
397    
398 kreckel 1.190 2007-12-17 Richard B. Kreckel <kreckel@ginac.de>
399    
400 kreckel 1.191 Silly workaround for silly bug in gmp.h:
401     * m4/gmp.m4 (CL_GMP_SET_UINTD): Swap #include <gmp.h> and <stdio.h>.
402    
403     2007-12-17 Richard B. Kreckel <kreckel@ginac.de>
404    
405 kreckel 1.190 * src/polynomial/elem/cl_UP_GF2.h (gf2_mul_table): define for sparc64.
406    
407 kreckel 1.189 2007-12-04 Richard B. Kreckel <kreckel@ginac.de>
408    
409     * include/cln/types.h ([su]intE): 64-bit exponents for MIPS and RS6000.
410    
411 kreckel 1.188 2007-12-03 Richard B. Kreckel <kreckel@ginac.de>
412    
413     * src/float/lfloat/cl_LF.h (cl_heap_lfloat): Change len type to uintC.
414    
415 kreckel 1.187 2007-11-28 Richard B. Kreckel <kreckel@ginac.de>
416    
417     * include/cln/object.h: Don't redefine cl_word_alignment on sparc64.
418     * src/base/digitseq/cl_asm_sparc64_.cc: Declare use of global
419     register %g2 as scratch register within this file.
420     Reported by Paul Irofti <bulibuta@gmail.com> and Sven Verdoolaege
421     <skimo@kotnet.org>.
422    
423 kreckel 1.186 2007-11-03 Richard B. Kreckel <kreckel@ginac.de>
424    
425     * src/base/digitseq/cl_asm_i386_.cc (compare_loop_up,
426     compare_loop_down): Fix empty ranges.
427    
428 kreckel 1.185 2007-10-12 Richard B. Kreckel <kreckel@ginac.de>
429    
430     Fix compilation on CYGWIN:
431     * src/float/transcendental/cl_LF_zeta_int.cc: Avoid leading underscores
432     in variable names.
433     * src/float/transcendental/cl_LF_eulerconst.cc: Likewise.
434     Reported by Chris Bouchard <cbouchrd@uiuc.edu>.
435    
436 kreckel 1.184 2007-10-10 Richard B. Kreckel <kreckel@ginac.de>
437    
438     * src/base/cl_low.h: Add missing linefeeds in SPARC 64 inline assembler.
439     * src/base/low/cl_low_div.cc (divu_6464_6464_): Fix a copy-paste typo.
440     Reported by Sven Verdoolaege <skimo@kotnet.org>.
441    
442 kreckel 1.183 2007-10-02 Richard B. Kreckel <kreckel@ginac.de>
443    
444     On popular demand (Debian bug #286266, Ubuntu bug #128851):
445     * examples/pi.cc: Output no more than requested number of digits.
446    
447 kreckel 1.182 2007-10-01 Richard B. Kreckel <kreckel@ginac.de>
448    
449     * autoconf/config.guess, autoconf/config.sub: updated from automake-1.9.
450    
451 kreckel 1.181 2007-09-19 Richard B. Kreckel <kreckel@ginac.de>
452    
453     * doc/cln.tex: Put entire document in @dircategory Mathematics.
454     * doc/Makefile.in: texi2html -split_chapter suddenly uses subdirectory.
455     * Makefile.in: Don't install non-existing cln-config* and cln.m4.
456    
457 kreckel 1.180 2007-09-18 Richard B. Kreckel <kreckel@ginac.de>
458    
459     * include/cln/modules.h (CL_JUMP_TO): Use a pc relative jump on m68k.
460     See <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=388000>.
461    
462 kreckel 1.179 2007-09-16 Richard B. Kreckel <kreckel@ginac.de>
463    
464     * */*: Convert encoding from ISO 8859-1 to UTF-8.
465    
466 kreckel 1.178 2007-09-13 Richard B. Kreckel <kreckel@ginac.de>
467    
468     Truncated binary splitting for even more memory efficiency:
469     * src/float/transcendental/cl_LF_tran.h: Added new overloads. See below.
470     * src/float/transcendental/cl_LF_ratseries_stream_pq.cc: Removed and
471     moved everything to...
472     * src/float/transcendental/cl_LF_ratseries_pq.cc: ...here. Added an
473     overload for truncated expansion.
474     * src/float/transcendental/cl_LF_ratseries_stream_pqa.cc: Removed and
475     moved everything to...
476     * src/float/transcendental/cl_LF_ratseries_pqa.cc: ...here. Added an
477     overload for truncated expansion.
478     * src/float/transcendental/cl_LF_ratseries_stream_pqb.cc: Removed and
479     moved everything to...
480     * src/float/transcendental/cl_LF_ratseries_pqb.cc: ...here. Added an
481     overload for truncated expansion.
482     * src/float/transcendental/cl_LF_ratseries_stream_pqab.cc: Removed and
483     moved everything to...
484     * src/float/transcendental/cl_LF_ratseries_pqab.cc: ...here. Added an
485     overload for truncated expansion.
486     * src/float/transcendental/cl_LF_ratsumseries_pqcd_aux.cc: Added
487     overloads for streamed and truncated expansion.
488     * src/float/transcendental/cl_LF_ratsumseries_pqcd.cc: Likewise.
489     * src/float/transcendental/cl_LF_ratsumseries_stream_pqd_aux.cc: Removed
490     and moved everything to...
491     * src/float/transcendental/cl_LF_ratsumseries_pqd_aux.cc: ...here. Added
492     an overload for truncated expansion.
493     * src/float/transcendental/cl_LF_ratsumseries_stream_pqd.cc: Removed
494     and moved everything to...
495     * src/float/transcendental/cl_LF_ratsumseries_pqd.cc: ...here. Added an
496     overload for truncated expansion.
497     * src/float/transcendental/cl_LF_pi.cc: Use truncated series.
498     * src/float/transcendental/cl_LF_catalanconst.cc: Likewise.
499     * src/float/transcendental/cl_LF_eulerconst.cc: Likewise.
500     * src/float/transcendental/cl_LF_zeta_int.cc: Likewise.
501     * src/float/transcendental/cl_LF_zeta3.cc: Likewise.
502    
503 kreckel 1.177 2007-09-07 Richard B. Kreckel <kreckel@ginac.de>
504    
505     More memory efficient Euler-Mascheroni constant:
506     * src/float/transcendental/cl_LF_tran.h (cl_pqd_series_stream): New.
507     * src/float/transcendental/cl_LF_ratsumseries_stream_pqd.cc: New file.
508     * src/float/transcendental/cl_LF_ratsumseries_stream_pqd_aux.cc: New
509     file.
510     * src/float/transcendental/cl_LF_eulerconst.cc: Compute series
511     coefficients on demand, using a series stream object.
512    
513 kreckel 1.176 2007-08-02 Richard B. Kreckel <kreckel@ginac.de>
514    
515     * src/base/digitseq/cl_DS_div.cc (cl_recip_suitable): uintC arguments.
516    
517 kreckel 1.175 2007-08-01 Richard B. Kreckel <kreckel@ginac.de>
518    
519     * */*: Remove cl_boolean, cl_true, and cl_false in favor of built-in
520     C++ bool, true, and false.
521    
522 kreckel 1.174 2007-07-28 Richard B. Kreckel <kreckel@ginac.de>
523    
524     Remove exception hooks in favor of real C++ exceptions:
525     * include/cln/exception.h: New file...
526     * include/cln/cln.h: ...included here...
527     * include/cln/rational.h: ...and here.
528     * include/cln/abort.h: Removed.
529     * include/cln/integer.h (ash_exception, exquo_exception): Add exception
530     types.
531     * include/cln/float.h (floating_point_exception,
532     floating_point_nan_exception, floating_point_overflow_exception,
533     floating_point_underflow_exception): Likewise.
534     * include/cln/number_io.h (read_number_exception,
535     read_number_bad_syntax_exception, read_number_junk_exception,
536     read_number_eof_exception): Likewise.
537     * include/cln/object.h (CL_DEFINE_CONVERTER): Replace dynamic assertion
538     with a compile-time assertion.
539     * include/cln/GV.h: Replace nonreturning functions with exceptions.
540     * include/cln/modinteger.h: Likewise.
541     * include/cln/SV.h: Likewise.
542     * include/cln/ring.h: Likewise.
543     * include/cln/string.h: Likewise.
544     * include/cln/univpoly.h: Likewise.
545     * src/base/cl_abort.cc: Removed.
546     * src/base/cl_N_err_d0.cc: Removed.
547     * src/base/cl_d0_exception.cc: New file.
548     * src/base/cl_as_err.cc: Removed.
549     * src/base/cl_as_exception.cc: New file.
550     * src/base/cl_notreached.cc: Removed.
551     * src/base/cl_notreached_exception.cc: New file.
552     * src/base/input/cl_read_err_bad.cc: Removed.
553     * src/base/input/cl_read_bad_syntax_exception.cc: New file.
554     * src/base/input/cl_read_err_junk.cc: Removed.
555     * src/base/input/cl_read_junk_exception.cc: New file.
556     * src/base/input/cl_read_err_eof.cc: Removed.
557     * src/base/input/cl_read_eof_exception.cc: New file.
558     * src/base/cl_N.h (cl_as_error): Removed (see cln/exception.h).
559     * src/base/macros.h (NOTREACHED): Throw.
560     * src/base/cl_malloc.cc (xmalloc): Throw.
561     * src/base/digitseq/cl_2DS_div.cc: Throw.
562     * src/base/digitseq/cl_DS_div.cc: Throw.
563     * src/base/digitseq/cl_DS_mul.cc: Throw.
564     * src/base/digitseq/cl_DS_mul_fftc.h: Throw.
565     * src/base/digitseq/cl_DS_mul_fftcs.h: Throw.
566     * src/base/digitseq/cl_DS_mul_fftm.h: Throw.
567     * src/base/digitseq/cl_DS_mul_fftp.h: Throw.
568     * src/base/digitseq/cl_DS_mul_fftp3.h: Throw.
569     * src/base/digitseq/cl_DS_mul_fftp3m.h: Throw.
570     * src/base/digitseq/cl_DS_mul_fftr.h: Throw.
571     * src/base/digitseq/cl_DS_mul_nuss.h: Throw.
572     * src/base/digitseq/cl_DS_recipsqrt.cc: Throw.
573     * src/base/digitseq/cl_DS_sqrt.cc: Throw.
574     * src/base/hash/cl_hash.h: Throw.
575     * src/base/hash/cl_hash1.h: Throw.
576     * src/base/hash/cl_hash1weak.h: Throw.
577     * src/base/hash/cl_hash2.h: Throw.
578     * src/base/hash/cl_hash2weak.h: Throw.
579     * src/base/hash/cl_hashset.h: Throw.
580     * src/base/hash/cl_hashuniq.h: Throw.
581     * src/base/hash/cl_hashuniqweak.h: Throw.
582     * src/base/proplist/cl_pl_add.cc: Throw.
583     * src/base/ring/cl_no_ring.cc: Throw.
584     * src/base/string/cl_spushstring.h: Throw.
585     * src/base/symbol/cl_symbol.cc: Throw.
586     * src/integer/bitwise/cl_I_ash.h: Removed (see cln/integer.h.)
587     * src/integer/bitwise/cl_I_asherr.cc: Removed.
588     * src/integer/bitwise/cl_I_ash_exception.cc: New file.
589     * src/integer/division/cl_I_exquoerr.cc: Removed.
590     * src/integer/division/cl_I_exquo_exception.cc: New file.
591     * src/integer/cl_I.h: Throw.
592     * src/integer/division/cl_I_exquopos.cc: Throw.
593     * src/integer/bitwise/cl_I_logbitp_I.cc: Throw.
594     * src/integer/bitwise/cl_I_ash.cc: Throw.
595     * src/integer/bitwise/cl_I_ash_I.cc: Throw.
596     * src/integer/division/cl_I_exquo.cc: Throw.
597     * src/integer/gcd/cl_I_gcd_aux2.cc: Throw.
598     * src/integer/conv/cl_I_to_L.cc: Throw.
599     * src/integer/conv/cl_I_to_Q.cc: Throw.
600     * src/integer/conv/cl_I_to_UL.cc: Throw.
601     * src/integer/conv/cl_I_to_UQ.cc: Throw.
602     * src/integer/conv/cl_I_to_digits.cc: Throw.
603     * src/integer/elem/cl_I_div.cc: Throw.
604     * src/integer/algebraic/cl_I_sqrt.cc: Throw.
605     * src/integer/input/cl_I_read.cc: Throw.
606     * src/integer/input/cl_I_read_stream.cc: Throw.
607     * src/integer/misc/cl_I_as.cc: Throw.
608     * src/rational/elem/cl_RA_from_I_I_div.cc: Throw.
609     * src/rational/elem/cl_RA_recip.cc: Throw.
610     * src/rational/input/cl_RA_read.cc: Throw.
611     * src/rational/input/cl_RA_read_stream.cc: Throw.
612     * src/rational/input/cl_RA_readparsed.cc: Throw.
613     * src/rational/misc/cl_RA_as.cc: Throw.
614     * src/float/base/cl_F_err_nan.cc: Removed.
615     * src/float/base/cl_F_nan_exception.cc: New file.
616     * src/float/base/cl_F_err_un.cc: Removed.
617     * src/float/base/cl_F_underflow_exception.cc: New file.
618     * src/float/base/cl_F_err_ov.cc: Removed.
619     * src/float/base/cl_F_overflow_exception.cc: New file.
620     * src/float/cl_F.h (cl_error_floating_point_nan,
621     cl_error_floating_point_overflow, cl_error_floating_point_underflow):
622     Removed (see cln/float.h.)
623     * src/float/sfloat/cl_SF.h: Throw.
624     * src/float/sfloat/elem/cl_SF_div.cc: Throw.
625     * src/float/sfloat/elem/cl_SF_from_RA.cc: Throw.
626     * src/float/sfloat/elem/cl_SF_scale.cc: Throw.
627     * src/float/sfloat/elem/cl_SF_scale_I.cc: Throw.
628     * src/float/sfloat/misc/cl_SF_as.cc: Throw.
629     * src/float/ffloat/cl_FF.h: Throw.
630     * src/float/ffloat/conv/cl_FF_from_float.cc: Throw.
631     * src/float/ffloat/elem/cl_FF_div.cc: Throw.
632     * src/float/ffloat/elem/cl_FF_from_RA.cc: Throw.
633     * src/float/ffloat/elem/cl_FF_scale.cc: Throw.
634     * src/float/ffloat/elem/cl_FF_scale_I.cc: Throw.
635     * src/float/ffloat/misc/cl_FF_as.cc: Throw.
636     * src/float/dfloat/cl_DF.h: Throw.
637     * src/float/dfloat/conv/cl_DF_from_double.cc: Throw.
638     * src/float/dfloat/elem/cl_DF_div.cc: Throw.
639     * src/float/dfloat/elem/cl_DF_from_RA.cc: Throw.
640     * src/float/dfloat/elem/cl_DF_scale.cc: Throw.
641     * src/float/dfloat/elem/cl_DF_scale_I.cc: Throw.
642     * src/float/dfloat/misc/cl_DF_as.cc: Throw.
643     * src/float/lfloat/algebraic/cl_LF_sqrt.cc: Throw.
644     * src/float/lfloat/elem/cl_LF_1plus.cc: Throw.
645     * src/float/lfloat/elem/cl_LF_I_div.cc: Throw.
646     * src/float/lfloat/elem/cl_LF_I_mul.cc: Throw.
647     * src/float/lfloat/elem/cl_LF_div.cc: Throw.
648     * src/float/lfloat/elem/cl_LF_from_I.cc: Throw.
649     * src/float/lfloat/elem/cl_LF_mul.cc: Throw.
650     * src/float/lfloat/elem/cl_LF_scale.cc: Throw.
651     * src/float/lfloat/elem/cl_LF_scale_I.cc: Throw.
652     * src/float/lfloat/elem/cl_LF_square.cc: Throw.
653     * src/float/lfloat/misc/cl_LF_as.cc: Throw.
654     * src/float/lfloat/misc/cl_LF_shorten.cc: Throw.
655     * src/float/lfloat/misc/cl_LF_shortenrel.cc: Throw.
656     * src/float/lfloat/misc/cl_LF_shortenwith.cc: Throw.
657     * src/float/input/cl_F_read.cc: Throw.
658     * src/float/input/cl_F_read_stream.cc: Throw.
659     * src/float/misc/cl_F_as.cc: Throw.
660     * src/float/misc/cl_F_shortenrel.cc: Throw.
661     * src/float/transcendental/cl_LF_coshsinh_aux.cc: Throw.
662     * src/float/transcendental/cl_LF_cossin_aux.cc: Throw.
663     * src/float/transcendental/cl_LF_exp_aux.cc: Throw.
664     * src/float/transcendental/cl_LF_ratseries_a.cc: Throw.
665     * src/float/transcendental/cl_LF_ratseries_ab.cc: Throw.
666     * src/float/transcendental/cl_LF_ratseries_b.cc: Throw.
667     * src/float/transcendental/cl_LF_ratseries_p.cc: Throw.
668     * src/float/transcendental/cl_LF_ratseries_pa.cc: Throw.
669     * src/float/transcendental/cl_LF_ratseries_pab.cc: Throw.
670     * src/float/transcendental/cl_LF_ratseries_pb.cc: Throw.
671     * src/float/transcendental/cl_LF_ratseries_pq.cc: Throw.
672     * src/float/transcendental/cl_LF_ratseries_pqa.cc: Throw.
673     * src/float/transcendental/cl_LF_ratseries_pqab.cc: Throw.
674     * src/float/transcendental/cl_LF_ratseries_pqb.cc: Throw.
675     * src/float/transcendental/cl_LF_ratseries_q.cc: Throw.
676     * src/float/transcendental/cl_LF_ratseries_qa.cc: Throw.
677     * src/float/transcendental/cl_LF_ratseries_qab.cc: Throw.
678     * src/float/transcendental/cl_LF_ratseries_qb.cc: Throw.
679     * src/float/transcendental/cl_LF_ratseries_stream_pq.cc: Throw.
680     * src/float/transcendental/cl_LF_ratseries_stream_pqa.cc: Throw.
681     * src/float/transcendental/cl_LF_ratseries_stream_pqab.cc: Throw.
682     * src/float/transcendental/cl_LF_ratseries_stream_pqb.cc: Throw.
683     * src/float/transcendental/cl_LF_ratsumseries_pqcd_aux.cc: Throw.
684     * src/float/transcendental/cl_LF_ratsumseries_pqd.cc: Throw.
685     * src/float/transcendental/cl_LF_ratsumseries_pqd_aux.cc: Throw.
686     * src/float/transcendental/cl_LF_zeta_int.cc: Throw.
687     * src/real/elem/cl_R_div.cc: Throw.
688     * src/real/format-output/cl_fmt_cardinal.cc: Throw.
689     * src/real/format-output/cl_fmt_newroman.cc: Throw.
690     * src/real/format-output/cl_fmt_oldroman.cc: Throw.
691     * src/real/input/cl_R_read.cc: Throw.
692     * src/real/input/cl_R_read_stream.cc: Throw.
693     * src/real/misc/cl_R_as.cc: Throw.
694     * src/real/random/cl_R_random.cc: Throw.
695     * src/real/transcendental/cl_R_atan2.cc: Throw.
696     * src/real/transcendental/cl_R_log.cc: Throw.
697     * src/complex/input/cl_N_read.cc: Throw.
698     * src/complex/input/cl_N_read_stream.cc: Throw.
699     * src/complex/misc/cl_N_as.cc: Throw.
700     * src/complex/transcendental/cl_C_atanh_aux.cc: Throw.
701     * src/complex/transcendental/cl_C_expt_C.cc: Throw.
702     * src/complex/transcendental/cl_C_log.cc: Throw.
703     * src/complex/transcendental/cl_C_log2.cc: Throw.
704     * src/numtheory/cl_nt_cornacchia1.cc: Throw.
705     * src/numtheory/cl_nt_cornacchia4.cc: Throw.
706     * src/numtheory/cl_nt_isprobprime.cc: Throw.
707     * src/numtheory/cl_nt_jacobi.cc: Throw.
708     * src/numtheory/cl_nt_jacobi_low.cc: Throw.
709     * src/numtheory/cl_nt_sqrtmodp.cc: Throw.
710     * src/modinteger/cl_MI.cc: Throw.
711     * src/modinteger/cl_MI_int.h: Throw.
712     * src/modinteger/cl_MI_montgom.h: Throw.
713     * src/modinteger/cl_MI_pow2.h: Throw.
714     * src/modinteger/cl_MI_rshift.cc: Throw.
715     * src/modinteger/cl_MI_std.h: Throw.
716     * src/polynomial/elem/cl_UP_GF2.h: Throw.
717     * src/polynomial/elem/cl_UP_MI.h: Throw.
718     * src/polynomial/elem/cl_UP_gen.h: Throw.
719     * src/polynomial/elem/cl_UP_named.cc: Throw.
720     * src/polynomial/elem/cl_UP_no_ring.cc (uninitialized_error,
721     uninitialized_ring): Removed (see cln/ring.h.)
722     * src/polynomial/elem/cl_UP_number.h: Throw.
723     * src/polynomial/elem/cl_UP_unnamed.cc: Throw.
724     * src/vector/cl_GV_I.cc: Throw.
725     * src/vector/cl_GV_number.cc: Throw.
726     * tests/timediv2adic-compare.cc: Use default abort(), not cl_abort().
727     * tests/timeprint-compare.cc: Likewise.
728     * tests/timerecip2adic-compare.cc: Likewise.
729     * doc/cln.tex: Document the exception classes.
730     * examples/contfrac.cc: Use try/catch instead of setjmp/longjmp.
731     * INSTALL: undocument -fno-exceptions.
732     * README: Add exceptions to list of used C++ features.
733    
734 kreckel 1.173 2007-06-20 Richard B. Kreckel <kreckel@ginac.de>
735    
736     * cln.spec.in (Source0): Package is bzip2-compressed.
737     Reported by Markus Grabner <grabner@icg.tugraz.at>.
738    
739 kreckel 1.172 2007-05-31 Richard B. Kreckel <kreckel@ginac.de>
740    
741     * include/cln/integer.h (cl_I_to_E, cl_I_to_UE): New functions.
742     * src/float/transcendental/cl_LF_exp_aux.cc: Make lq argument an uintE.
743     * src/float/transcendental/cl_LF_cossin_aux.cc: Likewise.
744     * src/float/transcendental/cl_LF_coshsinh_aux.cc: Likewise.
745     * src/float/transcendental/cl_F_tran.h: Change declaration of lq.
746     * src/float/transcendental/cl_F_lnx.cc: Fix some exponent types.
747     * src/float/transcendental/cl_F_expx.cc: Likewise.
748     * src/float/transcendental/cl_F_sinh.cc: Likewise.
749     * src/float/transcendental/cl_F_atanx.cc: Likewise.
750     * src/float/transcendental/cl_F_coshsinh.cc: Likewise.
751     * src/float/transcendental/cl_LF_cossin.cc: Likewise.
752     * src/float/transcendental/cl_LF_coshsinh.cc: Likewise.
753    
754 kreckel 1.171 2007-04-09 Richard B. Kreckel <kreckel@ginac.de>
755    
756     More memory efficient constants:
757     * src/float/transcendental/cl_LF_pi.cc (compute_pi_ramanujan_163_fast):
758     Compute series coefficients on demand, using a series stream object.
759     * src/float/transcendental/cl_LF_zeta3.cc (zeta3): Likewise.
760     * src/float/transcendental/cl_LF_catalanconst.cc
761     (compute_catalanconst_ramanujan_fast): Likewise.
762     (compute_catalanconst_lupas): New function.
763     (compute_catalanconst): Simplify, based on new benchmark.
764    
765 kreckel 1.170 2007-04-02 Alexei Sheplyakov <varg@theor.jinr.ru>
766    
767     Debian Bug#412103:
768     * cln.pc.in: list -lgmp in Libs.private instead of in Libs.
769     * doc/cln.tex: Undocument cln-config, properly document pkg-config.
770     * cln-config.1.in: Remove.
771     * cln-config.in: Remove.
772     * cln.m4: Remove.
773     * configure.ac: Don't output cln-config and cln-config.1.
774    
775 haible 1.169 2006-12-24 Bruno Haible <bruno@clisp.org>
776    
777     Make autoconfiguration work with gcc-4.3 snapshots.
778     * autoconf/intparam.c (main1): Rename get_integer_bitsize to
779     get_unsigned_integer_bitsize. New macro get_signed_integer_bitsize.
780    
781 haible 1.168 2006-12-19 Bruno Haible <bruno@clisp.org>
782    
783     * autoconf/intparam.c (main): Use 'return', not exit().
784     * autoconf/floatparam.c (main): Likewise.
785     Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
786    
787 kreckel 1.167 2006-12-11 Richard B. Kreckel <kreckel@ginac.de>
788    
789     Extend the exponent range from 32 bits to 64 bits on selected platforms.
790     * include/cln/number.h: Add signatures for operations with long long.
791     * include/cln/complex_class.h: Likewise.
792     * include/cln/real_class.h: Likewise.
793     * include/cln/real.h: Likewise.
794     * include/cln/rational_class.h: Likewise.
795     * include/cln/rational.h: Likewise.
796     * include/cln/integer_class.h: Likewise.
797     * include/cln/integer.h: Likewise.
798     * include/cln/float.h: Likewise.
799     * include/cln/lfloat.h: Likewise.
800     * include/cln/types.h (sintE and uintE): New types for exponents.
801     * include/cln/*float.h: Use the new types for exponents.
802     * include/cln/floatformat.h (float_format_t): Make underlying type
803     compatible with sintE.
804     * doc/cln.tex: Document changed float_exponent return value.
805     * src/float/cl_F.h: Likewise.
806     * src/float/ffloat/misc/cl_FF_exponent.cc: Likewise.
807     * src/float/input/cl_F_read.cc: Likewise.
808     * src/float/lfloat/cl_LF.h: Likewise.
809     * src/float/lfloat/cl_LF_impl.h: Likewise.
810     * src/float/lfloat/algebraic/cl_LF_sqrt.cc: Likewise.
811     * src/float/lfloat/elem/cl_LF_1plus.cc: Likewise.
812     * src/float/lfloat/elem/cl_LF_I_div.cc: Likewise.
813     * src/float/lfloat/elem/cl_LF_I_mul.cc: Likewise.
814     * src/float/lfloat/elem/cl_LF_compare.cc: Likewise.
815     * src/float/lfloat/elem/cl_LF_div.cc: Likewise.
816     * src/float/lfloat/elem/cl_LF_from_I.cc: Likewise.
817     * src/float/lfloat/elem/cl_LF_fround.cc: Likewise.
818     * src/float/lfloat/elem/cl_LF_ftrunc.cc: Likewise.
819     * src/float/lfloat/elem/cl_LF_futrunc.cc: Likewise.
820     * src/float/lfloat/elem/cl_LF_mul.cc: Likewise.
821     * src/float/lfloat/elem/cl_LF_scale.cc: Likewise.
822     * src/float/lfloat/elem/cl_LF_scale_I.cc: Likewise.
823     * src/float/lfloat/elem/cl_LF_square.cc: Likewise.
824     * src/float/lfloat/elem/cl_LF_to_I.cc: Likewise.
825     * src/float/lfloat/misc/cl_LF_decode.cc: Likewise.
826     * src/float/lfloat/misc/cl_LF_exponent.cc: Likewise.
827     * src/float/lfloat/misc/cl_LF_idecode.cc: Likewise.
828     * src/float/lfloat/misc/cl_LF_shortenrel.cc: Likewise.
829     * src/float/lfloat/misc/cl_LF_shortenwith.cc: Likewise.
830     * src/float/misc/cl_F_decode.cc: Likewise.
831     * src/float/misc/cl_F_exponent.cc: Likewise.
832     * src/float/misc/cl_F_shortenrel.cc: Likewise.
833     * src/float/misc/cl_float_format.cc: Likewise.
834     * src/float/output/cl_F_dprint.cc: Likewise.
835     * src/float/sfloat/misc/cl_SF_exponent.cc: Likewise.
836     * src/float/transcendental/cl_F_atanhx.cc: Likewise.
837     * src/float/transcendental/cl_F_atanx.cc: Likewise.
838     * src/float/transcendental/cl_F_cosh.cc: Likewise.
839     * src/float/transcendental/cl_F_expx.cc: Likewise.
840     * src/float/transcendental/cl_F_lnx.cc: Likewise.
841     * src/float/transcendental/cl_F_sinhx.cc: Likewise.
842     * src/float/transcendental/cl_F_sinx.cc: Likewise.
843     * src/float/transcendental/cl_LF_pi.cc: Likewise.
844     * src/integer/cl_I.h: Likewise.
845     * src/complex/algebraic/cl_LF_hypot.cc: Likewise.
846     * src/complex/elem/division/cl_C_LF_recip.cc: Likewise.
847     * src/float/dfloat/misc/cl_DF_exponent.cc: Likewise.
848     * src/integer/conv/cl_I_from_Q2.cc: Added.
849     * src/base/cl_low.h (isqrtC): New function, for 64 bit falls back to...
850     * src/base/low/cl_low_isqrt.cc (isqrt): ...this new implementation.
851     * src/base/cl_macros.h (bitc): Make sure 64 bit is used if required by
852     exponent operations.
853     * examples/pi.cc: Support more than 646456614 decimal digits.
854    
855 kreckel 1.166 2006-11-02 Richard B. Kreckel <kreckel@ginac.de>
856    
857     * src/base/digitseq/cl_DS.h: #undef DS, needed for i386-Solaris.
858    
859 kreckel 1.165 2006-10-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
860    
861     * tests/Makefile.in (VPATH): Fix syntax error.
862    
863 kreckel 1.164 2006-09-14 Richard B. Kreckel <kreckel@ginac.de>
864    
865     * examples/perfnum.cc: update to presumed 44th Mersenne prime.
866    
867 kreckel 1.163 2006-08-15 Richard B. Kreckel <kreckel@ginac.de>
868    
869     * tests/Makefile.in: MinGW support for make check
870     (Patch by Sheplyakov Alexei <varg@theor.jinr.ru> to add ${EXEEXT}).
871     * Makefile.in: Convert from $(VAR) to ${VAR} syntax.
872     * benchmarks/Makefile.in: Likewise.
873     * doc/Makefile.in: Likewise.
874     * examples/Makefile.in: Likewise.
875     * src/Makefile.in: Likewise.
876     * tests/Makefile.in: Likewise.
877    
878 kreckel 1.162 2006-08-06 Richard B. Kreckel <kreckel@ginac.de>
879    
880     * configure.ac: Re-enable shared lib on non-MinGW platforms, sigh.
881    
882 kreckel 1.161 2006-08-04 Sheplyakov Alexei <varg@theor.jinr.ru>
883    
884     * configure.ac: Disable shared lib on MinGW.
885    
886 kreckel 1.160 2006-08-03 Sheplyakov Alexei <varg@theor.jinr.ru>
887    
888     * m4/param.m4: Add support for MinGW.
889     * src/base/random/cl_random_from.cc: Fix for last patch.
890    
891 kreckel 1.159 2006-07-23 Sheplyakov Alexei <varg@theor.jinr.ru>
892    
893     * src/base/random/cl_random_from.cc: Add support for MinGW.
894    
895 kreckel 1.158 2006-06-13 Richard B. Kreckel <kreckel@ginac.de>
896    
897     * m4/general.m4 (CL_CANONICAL_HOST_CPU): Force host_cpu=i386 for x86_64
898     if userland is 32 bit.
899     * include/cln/config.h.in: Simplify __x86_64__ selection.
900     * src/base/digitseq/cl_asm_x86_64_.cc: Remove.
901    
902 kreckel 1.157 2006-06-09 Richard B. Kreckel <kreckel@ginac.de>
903    
904     * src/base/digitseq/cl_DS.h (struct DS): Change len type to uintC.
905    
906 kreckel 1.156 2006-05-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
907    
908     * m4/gettimeofday.m4 (CL_GETTIMEOFDAY): Fix M4 quoting.
909    
910 haible 1.155 2006-05-20 Bruno Haible <bruno@clisp.org>
911    
912     * src/base/random/cl_random_from.cc: Treat FreeBSD, NetBSD like other
913     Unix platforms.
914    
915 kreckel 1.154 2006-05-07 Richard B. Kreckel <kreckel@ginac.de>
916    
917     * include/cln/modules.h (CL_JUMP_TO): Fix for Intel Mac.
918    
919 haible 1.153 2006-04-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
920    
921     Prepare for autoconf-2.60.
922     * Makefile.in (datarootdir): New variable.
923     * src/Makefile.in (datarootdir): New variable.
924     * doc/Makefile.in (datarootdir): New variable.
925    
926 kreckel 1.152 2006-04-25 Bruno Haible <bruno@clisp.org>
927     Richard B. Kreckel <kreckel@ginac.de>
928    
929     Make it theoretically possible to use bignums and long-floats with
930     more than 2^32 significant digits or bits.
931     * doc/cln.tex (logcount): Change return type to uintC.
932     (struct cl_byte): Change elements to uintC.
933     (integer_length, ord2, power2p): Change return type to uintC.
934     (scale_float): Change argument type to sintC.
935     (float_digits, float_precision): Change return type to uintC.
936     * examples/atan_recip.cc: Use uintC instead of uintL where appropriate.
937     * examples/atanh_recip.cc: Likewise.
938     * include/cln/GV.h: Likewise.
939     * include/cln/GV_complex.h: Likewise.
940     * include/cln/GV_integer.h: Likewise.
941     * include/cln/GV_modinteger.h: Likewise.
942     * include/cln/GV_number.h: Likewise.
943     * include/cln/GV_rational.h: Likewise.
944     * include/cln/GV_real.h: Likewise.
945     * include/cln/SV.h: Likewise.
946     * include/cln/SV_complex.h: Likewise.
947     * include/cln/SV_integer.h: Likewise.
948     * include/cln/SV_number.h: Likewise.
949     * include/cln/SV_rational.h: Likewise.
950     * include/cln/SV_real.h: Likewise.
951     * include/cln/SV_ringelt.h: Likewise.
952     * include/cln/dfloat.h: Likewise.
953     * include/cln/ffloat.h: Likewise.
954     * include/cln/float.h: Likewise.
955     * include/cln/integer.h: Likewise.
956     * include/cln/lfloat.h: Likewise.
957     * include/cln/modinteger.h: Likewise.
958     * include/cln/sfloat.h: Likewise.
959     * src/base/cl_low.h (integerlengthC): New macro.
960     * src/base/digitseq/cl_2DS_div.cc: Use uintC instead of uintL where
961     appropriate.
962     * src/base/digitseq/cl_2DS_recip.cc: Likewise.
963     * src/base/digitseq/cl_DS.h: Likewise.
964     * src/base/digitseq/cl_DS_mul.c: Likewise.
965     * src/base/digitseq/cl_DS_mul_fftc.h: Likewise.
966     * src/base/digitseq/cl_DS_mul_fftcs.h: Likewise.
967     * src/base/digitseq/cl_DS_mul_fftm.h: Likewise.
968     * src/base/digitseq/cl_DS_mul_fftp.h: Likewise.
969     * src/base/digitseq/cl_DS_mul_fftp3.h: Likewise.
970     * src/base/digitseq/cl_DS_mul_fftp3m.h: Likewise.
971     * src/base/digitseq/cl_DS_mul_fftr.h: Likewise.
972     * src/base/digitseq/cl_DS_mul_kara.h: Likewise.
973     * src/base/digitseq/cl_DS_mul_nuss.h: Likewise.
974     * src/base/digitseq/cl_DS_recip.cc: Likewise.
975     * src/base/digitseq/cl_DS_recipsqrt.cc: Likewise.
976     * src/base/digitseq/cl_DS_sqrt.cc: Likewise.
977     * src/base/digitseq/cl_DS_trandom.cc: Likewise.
978     * src/complex/input/cl_N_read.cc: Likewise.
979     * src/complex/transcendental/cl_C_asinh_aux.cc: Likewise.
980     * src/complex/transcendental/cl_C_expt_C.cc: Likewise.
981     * src/float/cl_F.h: Likewise.
982     * src/float/conv/cl_F_from_F_f.cc: Likewise.
983     * src/float/conv/cl_F_from_I_f.cc: Likewise.
984     * src/float/conv/cl_F_from_RA_f.cc: Likewise.
985     * src/float/dfloat/conv/cl_I_to_double.cc: Likewise.
986     * src/float/dfloat/conv/cl_RA_to_double.cc: Likewise.
987     * src/float/dfloat/elem/cl_DF_from_I.cc: Likewise.
988     * src/float/dfloat/elem/cl_DF_from_RA.cc: Likewise.
989     * src/float/dfloat/elem/cl_DF_scale.cc: Likewise.
990     * src/float/dfloat/misc/cl_DF_digits.cc: Likewise.
991     * src/float/dfloat/misc/cl_DF_precision.cc: Likewise.
992     * src/float/elem/cl_F_scale.cc: Likewise.
993     * src/float/ffloat/conv/cl_I_to_float.cc: Likewise.
994     * src/float/ffloat/conv/cl_RA_to_float.cc: Likewise.
995     * src/float/ffloat/elem/cl_FF_from_I.cc: Likewise.
996     * src/float/ffloat/elem/cl_FF_from_RA.cc: Likewise.
997     * src/float/ffloat/elem/cl_FF_scale.cc: Likewise.
998     * src/float/ffloat/misc/cl_FF_digits.cc: Likewise.
999     * src/float/ffloat/misc/cl_FF_precision.cc: Likewise.
1000     * src/float/input/cl_F_read.cc: Likewise.
1001     * src/float/lfloat/algebraic/cl_LF_sqrt.cc: Likewise.
1002     * src/float/lfloat/elem/cl_LF_1plus.cc: Likewise.
1003     * src/float/lfloat/elem/cl_LF_I_div.cc: Likewise.
1004     * src/float/lfloat/elem/cl_LF_I_mul.cc: Likewise.
1005     * src/float/lfloat/elem/cl_LF_div.cc: Likewise.
1006     * src/float/lfloat/elem/cl_LF_from_I.cc: Likewise.
1007     * src/float/lfloat/elem/cl_LF_from_RA.cc: Likewise.
1008     * src/float/lfloat/elem/cl_LF_fround.cc: Likewise.
1009     * src/float/lfloat/elem/cl_LF_ftrunc.cc: Likewise.
1010     * src/float/lfloat/elem/cl_LF_futrunc.cc: Likewise.
1011     * src/float/lfloat/elem/cl_LF_scale.cc: Likewise.
1012     * src/float/lfloat/elem/cl_LF_to_I.cc: Likewise.
1013     * src/float/lfloat/misc/cl_LF_digits.cc: Likewise.
1014     * src/float/lfloat/misc/cl_LF_idecode.cc: Likewise.
1015     * src/float/lfloat/misc/cl_LF_leninc.cc: Likewise.
1016     * src/float/lfloat/misc/cl_LF_lenincx.cc: Likewise.
1017     * src/float/lfloat/misc/cl_LF_precision.cc: Likewise.
1018     * src/float/lfloat/misc/cl_LF_shortenrel.cc: Likewise.
1019     * src/float/lfloat/misc/cl_LF_shortenwith.cc: Likewise.
1020     * src/float/misc/cl_F_digits.cc: Likewise.
1021     * src/float/misc/cl_F_epsneg.cc: Likewise.
1022     * src/float/misc/cl_F_epspos.cc: Likewise.
1023     * src/float/misc/cl_F_leastneg.cc: Likewise.
1024     * src/float/misc/cl_F_leastpos.cc: Likewise.
1025     * src/float/misc/cl_F_mostneg.cc: Likewise.
1026     * src/float/misc/cl_F_mostpos.cc: Likewise.
1027     * src/float/misc/cl_F_precision.cc: Likewise.
1028     * src/float/misc/cl_F_rational.cc: Likewise.
1029     * src/float/misc/cl_F_shortenrel.cc: Likewise.
1030     * src/float/output/cl_F_dprint.cc: Likewise.
1031     * src/float/random/cl_F_random.cc: Likewise.
1032     * src/float/sfloat/elem/cl_SF_from_I.cc: Likewise.
1033     * src/float/sfloat/elem/cl_SF_from_RA.cc: Likewise.
1034     * src/float/sfloat/elem/cl_SF_scale.cc: Likewise.
1035     * src/float/sfloat/misc/cl_SF_digits.cc: Likewise.
1036     * src/float/sfloat/misc/cl_SF_precision.cc: Likewise.
1037     * src/float/transcendental/cl_F_atanhx.cc: Likewise.
1038     * src/float/transcendental/cl_F_atanx.cc: Likewise.
1039     * src/float/transcendental/cl_F_catalanconst_f.cc: Likewise.
1040     * src/float/transcendental/cl_F_cos.cc: Likewise.
1041     * src/float/transcendental/cl_F_cosh.cc: Likewise.
1042     * src/float/transcendental/cl_F_coshsinh.cc: Likewise.
1043     * src/float/transcendental/cl_F_cossin.cc: Likewise.
1044     * src/float/transcendental/cl_F_eulerconst_f.cc: Likewise.
1045     * src/float/transcendental/cl_F_exp1_f.cc: Likewise.
1046     * src/float/transcendental/cl_F_expx.cc: Likewise.
1047     * src/float/transcendental/cl_F_ln10_f.cc: Likewise.
1048     * src/float/transcendental/cl_F_ln2_f.cc: Likewise.
1049     * src/float/transcendental/cl_F_lnx.cc: Likewise.
1050     * src/float/transcendental/cl_F_pi_f.cc: Likewise.
1051     * src/float/transcendental/cl_F_sin.cc: Likewise.
1052     * src/float/transcendental/cl_F_sinh.cc: Likewise.
1053     * src/float/transcendental/cl_F_sinhx.cc: Likewise.
1054     * src/float/transcendental/cl_F_sinx.cc: Likewise.
1055     * src/float/transcendental/cl_F_tran.h: Likewise.
1056     * src/float/transcendental/cl_F_zeta_int_f.cc: Likewise.
1057     * src/float/transcendental/cl_LF_atan_recip.cc: Likewise.
1058     * src/float/transcendental/cl_LF_atanh_recip.cc: Likewise.
1059     * src/float/transcendental/cl_LF_catalanconst.cc: Likewise.
1060     * src/float/transcendental/cl_LF_coshsinh_aux.cc: Likewise.
1061     * src/float/transcendental/cl_LF_cossin_aux.cc: Likewise.
1062     * src/float/transcendental/cl_LF_eulerconst.cc: Likewise.
1063     * src/float/transcendental/cl_LF_exp1.cc: Likewise.
1064     * src/float/transcendental/cl_LF_exp_aux.cc: Likewise.
1065     * src/float/transcendental/cl_LF_pi.cc: Likewise.
1066     * src/float/transcendental/cl_LF_ratseries.cc: Likewise.
1067     * src/float/transcendental/cl_LF_ratseries_.cc: Likewise.
1068     * src/float/transcendental/cl_LF_ratseries_a.cc: Likewise.
1069     * src/float/transcendental/cl_LF_ratseries_ab.cc: Likewise.
1070     * src/float/transcendental/cl_LF_ratseries_b.cc: Likewise.
1071     * src/float/transcendental/cl_LF_ratseries_p.cc: Likewise.
1072     * src/float/transcendental/cl_LF_ratseries_pa.cc: Likewise.
1073     * src/float/transcendental/cl_LF_ratseries_pab.cc: Likewise.
1074     * src/float/transcendental/cl_LF_ratseries_pb.cc: Likewise.
1075     * src/float/transcendental/cl_LF_ratseries_pq.cc: Likewise.
1076     * src/float/transcendental/cl_LF_ratseries_pqa.cc: Likewise.
1077     * src/float/transcendental/cl_LF_ratseries_pqab.cc: Likewise.
1078     * src/float/transcendental/cl_LF_ratseries_pqb.cc: Likewise.
1079     * src/float/transcendental/cl_LF_ratseries_q.cc: Likewise.
1080     * src/float/transcendental/cl_LF_ratseries_qa.cc: Likewise.
1081     * src/float/transcendental/cl_LF_ratseries_qab.cc: Likewise.
1082     * src/float/transcendental/cl_LF_ratseries_qb.cc: Likewise.
1083     * src/float/transcendental/cl_LF_ratseries_stream_pq.cc: Likewise.
1084     * src/float/transcendental/cl_LF_ratseries_stream_pqa.cc: Likewise.
1085     * src/float/transcendental/cl_LF_ratseries_stream_pqab.cc: Likewise.
1086     * src/float/transcendental/cl_LF_ratseries_stream_pqb.cc: Likewise.
1087     * src/float/transcendental/cl_LF_ratsumseries_pqcd.cc: Likewise.
1088     * src/float/transcendental/cl_LF_ratsumseries_pqcd_aux.cc: Likewise.
1089     * src/float/transcendental/cl_LF_ratsumseries_pqd.cc: Likewise.
1090     * src/float/transcendental/cl_LF_ratsumseries_pqd_aux.cc: Likewise.
1091     * src/float/transcendental/cl_LF_tran.h: Likewise.
1092     * src/float/transcendental/cl_LF_zeta3.cc: Likewise.
1093     * src/float/transcendental/cl_LF_zeta_int.cc: Likewise.
1094     * src/integer/algebraic/cl_I_rootp_I.cc: Likewise.
1095     * src/integer/algebraic/cl_I_rootp_aux.cc: Likewise.
1096     * src/integer/bitwise/cl_I_ash.cc: Likewise.
1097     * src/integer/bitwise/cl_I_ash_I.cc: Likewise.
1098     * src/integer/bitwise/cl_I_byte.h: Likewise.
1099     * src/integer/bitwise/cl_I_fullbyte.cc: Likewise.
1100     * src/integer/bitwise/cl_I_ilength.cc: Likewise.
1101     * src/integer/bitwise/cl_I_ldb.cc: Likewise.
1102     * src/integer/bitwise/cl_I_ldbtest.cc: Likewise.
1103     * src/integer/bitwise/cl_I_ldbx.cc: Likewise.
1104     * src/integer/bitwise/cl_I_ldbxtest.cc: Likewise.
1105     * src/integer/bitwise/cl_I_logbitp.cc: Likewise.
1106     * src/integer/bitwise/cl_I_logbitp_I.cc: Likewise.
1107     * src/integer/bitwise/cl_I_logcount.cc: Likewise.
1108     * src/integer/bitwise/cl_I_mkf.cc: Likewise.
1109     * src/integer/bitwise/cl_I_mkfx.cc: Likewise.
1110     * src/integer/cl_I.h: Likewise.
1111     * src/integer/conv/cl_I_to_digits.cc: Likewise.
1112     * src/integer/conv/cl_I_digits_need.cc: Likewise.
1113     * src/integer/conv/cl_I_from_digits.cc: Likewise.
1114     * src/integer/gcd/cl_I_gcd.cc: Likewise.
1115     * src/integer/gcd/cl_I_xgcd.cc: Likewise.
1116     * src/integer/misc/cl_I_eqhashcode.cc: Likewise.
1117     * src/integer/misc/cl_I_ord2.cc: Likewise.
1118     * src/integer/misc/cl_I_power2p.cc: Likewise.
1119     * src/integer/output/cl_I_cached_power.h (cached_power_table): allow
1120     for 40 elements.
1121     * src/integer/output/cl_I_decstring.cc: Use uintC instead of uintL
1122     where appropriate.
1123     * src/integer/output/cl_I_print.cc: Likewise.
1124     * src/integer/output/cl_I_print_string.cc: Likewise.
1125     * src/modinteger/cl_MI.cc: Likewise.
1126     * src/modinteger/cl_MI_lshift.cc: Likewise.
1127     * src/modinteger/cl_MI_montgom.h: Likewise.
1128     * src/modinteger/cl_MI_pow2.h: Likewise.
1129     * src/modinteger/cl_MI_pow2m1.h: Likewise.
1130     * src/modinteger/cl_MI_pow2p1.h: Likewise.
1131     * src/modinteger/cl_MI_rshift.cc: Likewise.
1132     * src/modinteger/cl_MI_std.h: Likewise.
1133     * src/numtheory/cl_IF_millerrabin.cc: Likewise.
1134     * src/numtheory/cl_nt_isprobprime.cc: Likewise.
1135     * src/numtheory/cl_nt_sqrtmodp.cc: Likewise.
1136     * src/polynomial/elem/cl_UP_GF2.h: Likewise.
1137     * src/real/conv/cl_F_from_R_f.cc: Likewise.
1138     * src/real/format-output/cl_fmt_floatstring.cc: Likewise.
1139     * src/real/input/cl_R_read.cc: Likewise.
1140     * src/vector/cl_GV_I.cc: Likewise.
1141     * src/vector/cl_GV_I_copy.cc: Likewise.
1142     * src/vector/cl_GV_number.cc: Likewise.
1143     * src/vector/cl_GV_number_copy.cc: Likewise.
1144     * src/vector/cl_SV_copy.cc: Likewise.
1145     * src/vector/cl_SV_number.cc: Likewise.
1146     * src/vector/cl_SV_ringelt.cc: Likewise.
1147     * tests/main.cc: Likewise.
1148     * tests/test_I_ilength.cc: Likewise.
1149     * tests/test_I_ord2.cc: Likewise.
1150    
1151 haible 1.151 2006-04-19 Bruno Haible <bruno@clisp.org>
1152    
1153     Prepare for autoconf-2.60.
1154     * general.m4 (CL_CC_WORKS): Include <stdlib.h>, for exit() declaration.
1155     * longdouble.m4 (CL_LONGDOUBLE): Likewise.
1156     * longlong.m4 (CL_LONGLONG): Likewise.
1157     * times.m4 (CL_TIMES_CLOCK): Likewise.
1158     Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
1159    
1160 kreckel 1.150 2005-12-04 Bruno Haible <bruno@clisp.org>
1161    
1162     * src/integer/conv/cl_I_to_digits.cc (I_to_digits_noshrink): Set
1163     erg->len at the end.
1164    
1165     2005-12-04 Bruno Haible <bruno@clisp.org>
1166    
1167     Extend the fixnum range from 32 bits to 61 bits on 64-bit platforms.
1168     * doc/cln.tex (gcd, jacobi): Take 'long' instead of 'int32' arguments.
1169     * include/cln/object.h (cl_value_shift): Define as 3, not 32, in the
1170     64-bit case.
1171     * include/cln/types.h (intVsize): New macro.
1172     (sintV, uintV): New types.
1173     * include/cln/integer.h (gcd): Take uintV arguments.
1174     * include/cln/numtheory.h (jacobi): Take sintV arguments.
1175     * src/complex/input/cl_N_read.cc (read_complex): Call FN_to_UV instead
1176     of FN_to_UL.
1177     * src/complex/transcendental/cl_C_expt_C.cc: Likewise.
1178     * src/float/dfloat/elem/cl_DF_scale_I.cc: Use uintV instead of uintL
1179     * src/float/dfloat/elem/cl_DF_from_RA.cc: Don't assume values >= 2^53
1180     and < 2^55 are always bignums.
1181     where appropriate.
1182     * src/float/ffloat/conv/cl_RA_to_float.cc: Call FN_to_UV instead of
1183     FN_to_UL.
1184     * src/float/ffloat/elem/cl_FF_from_RA.cc: Likewise.
1185     * src/float/ffloat/elem/cl_FF_scale_I.cc: Call FN_to_V instead of
1186     FN_to_L.
1187     * src/float/lfloat/elem/cl_LF_scale_I.cc: Likewise.
1188     * src/float/output/cl_F_dprint.cc: Likewise.
1189     * src/float/sfloat/elem/cl_SF_from_RA.cc: Call FN_to_UV instead of
1190     FN_to_UL.
1191     * src/float/sfloat/elem/cl_SF_scale_I.cc: Call FN_to_V instead of
1192     FN_to_L.
1193     * src/integer/cl_I.h (FN_to_UV): Renamed from FN_to_UL, change return
1194     type.
1195     (FN_to_V): Renamed from FN_to_L, change return type.
1196     (FN_V_zerop): Renamed from FN_L_zerop.
1197     (FN_V_minusp): Renamed from FN_L_minusp.
1198     (cl_I_constructor_from_L2, cl_I_constructor_from_UL2): Define as an
1199     inline function on 64-bit platforms.
1200     (V_to_I, UV_to_I): New macros.
1201     (pFN_maxlength_digits_at): Return an uintV instead of an uint32.
1202     (set_pFN_maxlength_digits_at): Take an uintV instead of an uint32.
1203     * src/integer/algebraic/cl_I_sqrtp.cc: Call FN_to_UV instead of
1204     FN_to_UL.
1205     * src/integer/bitwise/cl_I_ash_I.cc: Call FN_to_V instead of FN_to_L.
1206     * src/integer/bitwise/cl_I_ilength.cc: Likewise.
1207     * src/integer/bitwise/cl_I_log_aux.cc: Likewise.
1208     * src/integer/bitwise/cl_I_logbitp_I.cc: Likewise.
1209     * src/integer/bitwise/cl_I_logcount.cc: Likewise.
1210     * src/integer/bitwise/cl_I_logtest.cc: Likewise.
1211     * src/integer/conv/cl_I_from_L2.cc: Don't produce code on 64-bit
1212     platforms.
1213     * src/integer/conv/cl_I_from_UL2.cc: Likewise.
1214     * src/integer/conv/cl_I_from_NDS.cc: Update.
1215     * src/integer/conv/cl_I_from_Q.cc: Remove cast to sint32.
1216     * src/integer/conv/cl_I_from_UQ.cc: Remove cast to uint32.
1217     * src/integer/conv/cl_I_to_L.cc: Check again fixnum that needs more
1218     than 32 bits.
1219     * src/integer/conv/cl_I_to_Q.cc: Call FN_to_V instead of FN_to_L.
1220     * src/integer/conv/cl_I_to_UL.cc: Likewise.
1221     * src/integer/conv/cl_I_to_UQ.cc: Likewise.
1222     * src/integer/elem/cl_I_div.cc: Treat fixnums that need more than 32
1223     bits like bignums.
1224     * src/integer/elem/cl_I_minus.cc: Call FN_to_V instead of FN_to_L.
1225     * src/integer/elem/cl_I_mul.cc: Likewise.
1226     * src/integer/elem/cl_I_plus.cc: Likewise.
1227     * src/integer/elem/cl_I_square.cc: Likewise.
1228     * src/integer/elem/cl_I_uminus.cc: Likewise.
1229     * src/integer/gcd/cl_I_gcd.cc: Likewise.
1230     * src/integer/gcd/cl_low_gcd.cc (gcd): Take uintV arguments.
1231     * src/integer/hash/cl_I_hashcode.cc: Call FN_to_V instead of FN_to_L.
1232     * src/integer/input/cl_I_read.cc (read_integer): Call FN_to_UV instead
1233     of FN_to_UL.
1234     * src/integer/misc/cl_I_ord2.cc (ord2): Call ord2_64 on 64-bit
1235     platforms.
1236     * src/integer/misc/cl_I_power2p.cc: Call FN_to_UV instead of FN_to_UL.
1237     * src/integer/misc/combin/cl_I_doublefactorial.cc (doublefakul_table):
1238     Extend table for larger fixnums.
1239     (doublefactorial): Update.
1240     * src/integer/misc/combin/cl_I_factorial.cc (fakul_table): Extend table
1241     for larger fixnums.
1242     (factorial): Update.
1243     * src/modinteger/cl_MI_fix16.h: Call FN_to_UV instead of FN_to_UL.
1244     * src/modinteger/cl_MI_fix29.h: Likewise.
1245     * src/modinteger/cl_MI_fix32.h: Likewise.
1246     * src/modinteger/cl_MI_std.h: Likewise.
1247     * src/numtheory/cl_nt_cornacchia4.cc: Call FN_to_V instead of FN_to_L.
1248     * src/numtheory/cl_nt_jacobi.cc: Likewise.
1249     * src/numtheory/cl_nt_jacobi_low.cc (jacobi_aux): Take uintV arguments
1250     instead of uint32 arguments.
1251     (jacobi): Take sintV argument instead of a sint32 argument.
1252     * src/rational/input/cl_RA_read.cc: Call FN_to_UV instead of FN_to_UL.
1253     * src/real/input/cl_R_read.cc: Likewise.
1254     * src/vector/cl_GV_I.cc: Likewise.
1255     * tests/timefact.cc: Call FN_to_V instead of FN_to_L.
1256    
1257     2005-12-04 Bruno Haible <bruno@clisp.org>
1258    
1259     More complete 64-bit division macros.
1260     * src/base/cl_low.h (divu_6432_3232_w): Choose a different macro
1261     expansion on x86_64.
1262     (divu_6432_6432): New macro.
1263     (divu_6464_6464): Choose a different macro expansion for all CPUs
1264     except sparc64 and x86_64.
1265     (divu_12864_6464): Define NEED_VAR_divu_64_rest here.
1266     * src/base/low/cl_low_div.cc (divu_64_rest): Avoid defining it twice.
1267     (divu_6464_6464_): New function.
1268    
1269     2005-12-04 Bruno Haible <bruno@clisp.org>
1270    
1271     * src/base/cl_low.h (ord2_64): New macro.
1272    
1273     2005-12-02 Bruno Haible <bruno@clisp.org>
1274    
1275     * src/base/cl_low.h (mulu64) [x86_64]: Change asm restriction, since
1276     mulq doesn't accept immediate arguments.
1277    
1278     2005-11-26 Bruno Haible <bruno@clisp.org>
1279    
1280     * src/base/cl_low.h (GENERIC_INTEGERLENGTH32): New macro.
1281     (integerlength64): Define using integerlength32 if integerlength32
1282     is not defined generically.
1283    
1284     2005-11-26 Bruno Haible <bruno@clisp.org>
1285    
1286     * src/base/cl_low.h (mulu32) [SPARC64]: Remove rd instruction, since
1287     umul returns the complete 64-bit product in a register.
1288     (mulu32_w) [SPARC64]: Prefer umul over mulx instruction.
1289     (divu_6432_3232_w) [SPARC64]: Prefer umul/udiv over mulx/udivx
1290     instructions.
1291    
1292     2005-11-26 Bruno Haible <bruno@clisp.org>
1293    
1294     * src/base/cl_low.h (divu_3216_1616): Prepend underscore to local
1295     variables.
1296    
1297     2005-11-26 Bruno Haible <bruno@clisp.org>
1298    
1299     * src/base/cl_low.h (ord2_32): Parenthesize macro argument.
1300    
1301 kreckel 1.149 2005-12-17 Richard B. Kreckel <kreckel@ginac.de>
1302    
1303     * Created branch cln_1-1 for maintenance patches.
1304     This is the main branch, which will eventually become CLN 1.2.0.
1305    
1306 kreckel 1.148 2005-12-15 Dmitry V. Kustov <kustov@telex221.ru>
1307    
1308     * src/base/random/cl_random_from.cc: Add support for OpenBSD.
1309    
1310 kreckel 1.147 2005-11-23 Richard B. Kreckel <kreckel@ginac.de>
1311 kreckel 1.146
1312     * Version 1.1.11 released.
1313    
1314 kreckel 1.145 2005-11-20 Richard B. Kreckel <kreckel@ginac.de>
1315    
1316     * src/integer/conv/cl_I_cached_power.h: New file.
1317     * src/integer/conv/cl_I_cached_power.cc: New file.
1318     Contains power_table and cached_power_table previously...
1319     * src/integer/conv/cl_I_to_digits.cc: ...here.
1320     * src/integer/conv/cl_I_from_digits.cc: Use cached powers.
1321    
1322 kreckel 1.144 2005-11-02 Richard B. Kreckel <kreckel@ginac.de>
1323    
1324     * src/integer/conv/cl_I_from_digits.cc: Made input of all numbers in
1325     non-power-of-two base much faster.
1326     * tests/test_I_io.cc: New file...
1327     * tests/Makefile.in, tests/test_I.cc: ...used here.
1328    
1329     2005-10-22 Richard B. Kreckel <kreckel@ginac.de>
1330 kreckel 1.143
1331     * Version 1.1.10 released.
1332    
1333 kreckel 1.142 2005-10-22 Richard B. Kreckel <kreckel@ginac.de>
1334    
1335     * src/Makefile.in: Accept CPPFLAGS from environment.
1336     * examples/Makefile.in: Likewise.
1337     * benchmarks/Makefile.in: Likewise.
1338     * tests/Makefile.in: Likewise.
1339    
1340 kreckel 1.138 2005-08-30 Richard B. Kreckel <kreckel@ginac.de>
1341    
1342 kreckel 1.139 * include/cln/modules.h (CL_OUTPUT_LABEL): Work around redundant
1343     duplication of basic blocks on m68k.
1344    
1345     2005-08-30 Richard B. Kreckel <kreckel@ginac.de>
1346    
1347 kreckel 1.138 * include/cln/modules.h (CL_JUMP_TO): Fix mips* brokenness.
1348    
1349 haible 1.132 2005-08-27 Bruno Haible <bruno@clisp.org>
1350    
1351 haible 1.140 Split aclocal.m4 into individual files.
1352     * m4/alloca.m4, m4/as-underscore.m4, m4/c++-constructors.m4:
1353     * m4/fpu_control.m4, m4/general.m4, m4/gettimeofday.m4:
1354     * m4/longdouble.m4, m4/longlong.m4, m4/param.m4, m4/perror.m4:
1355     * m4/proto.m4, m4/rusage.m4, m4/times.m4:
1356     New files, extracted from autoconf/aclocal.m4.
1357     * autoconf/aclocal.m4: m4_include them.
1358     * Makefile.devel (AUTOCONF_MACROS): New variable.
1359     (configure): Depend on it.
1360     (CLISP_M4DIR): Remove variable.
1361     (autoconf/aclocal.m4): Remove rule.
1362    
1363     2005-08-27 Bruno Haible <bruno@clisp.org>
1364    
1365 haible 1.137 * src/integer/bitwise/cl_I_ash_I.cc (ash): Avoid shifting a 32-bit
1366     zero value by more than 31 bits.
1367    
1368     2005-08-27 Bruno Haible <bruno@clisp.org>
1369    
1370 haible 1.136 Make the long-float overflow check work on 64-bit platforms.
1371     * src/float/lfloat/cl_LF.h (LF_exp_mid, LF_exp_high): Define as
1372     'unsigned int', not 'unsigned long'.
1373    
1374     2005-08-27 Bruno Haible <bruno@clisp.org>
1375    
1376 haible 1.141 * include/cln/modules.h (CL_OUTPUT_LABEL): Work around redundant
1377     duplication of basic blocks by g++ 4.0.
1378 haible 1.135 See <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23345>.
1379    
1380     2005-08-27 Bruno Haible <bruno@clisp.org>
1381    
1382 haible 1.134 Make it possible to cross-compile CLN.
1383     * m4/intparam.m4: New file.
1384     * m4/floatparam.m4: New file.
1385     * autoconf/aclocal.m4: Include both.
1386     (CL_MACHINE): Add an additional CROSS_MACRO parameter.
1387     * configure.ac (CL_MACHINE): When cross-compiling, use
1388     CL_INTPARAM_CROSS and CL_FLOATPARAM_CROSS.
1389    
1390     2005-08-27 Bruno Haible <bruno@clisp.org>
1391    
1392 haible 1.133 Define HAVE_LONGLONG and HAVE_LONGDOUBLE when cross-compiling.
1393     * autoconf/aclocal.m4 (CL_LONGLONG, CL_LONGDOUBLE): When cross-
1394     compiling, use the test code from gnulib.
1395    
1396     2005-08-27 Bruno Haible <bruno@clisp.org>
1397    
1398 haible 1.132 * autoconf/aclocal.m4 (CL_RUSAGE): Fix error when cross-compiling.
1399    
1400 kreckel 1.131 2005-08-16 Richard B. Kreckel <kreckel@ginac.de>
1401    
1402     The patch of 2005-05-01 made it impossible to test the type of a cl_UP
1403     by comparing with &cl_class_univpoly_ring. We need an alternative:
1404     * include/cln/object.h (cl_class_flags_modint_ring): New #define...
1405     * src/polynomial/elem/cl_UP.cc (cl_class_univpoly_ring): ...used here.
1406     * src/polynomial/elem/cl_UP_GF2.h: Likewise.
1407     * src/polynomial/elem/cl_UP_MI.h: Likewise.
1408     * src/polynomial/elem/cl_UP_gen.h: Likewise.
1409     * src/polynomial/elem/cl_UP_number.h: Likewise.
1410    
1411 kreckel 1.130 2005-08-15 Richard B. Kreckel <kreckel@ginac.de>
1412    
1413     * m4/cc.m4 (CL_AS_NOEXECSTACK): New macro...
1414     * configure.ac: ...used here for setting ASMFLAGS...
1415     * src/Makefile.in: ...which are used here.
1416    
1417 kreckel 1.129 2005-08-02 Andreas Jochens <aj@andaco.de>
1418    
1419     * include/cln/config.h.in: Add support for PowerPC 64 CPU.
1420     * include/cln/modules.h: Likewise.
1421     * include/cln/object.h: Likewise.
1422     * include/cln/types.h: Likewise.
1423    
1424     2005-07-24 Richard B. Kreckel <kreckel@ginac.de>
1425 kreckel 1.128
1426     Make out of the box build on x86_64 system with complete 32 bit
1427     userland possible
1428     * include/cln/config.h.in: Don't #define __x86_64__ when
1429     __i386__ is defined.
1430     * src/base/digitseq/cl_asm_x86_64_.cc: New file.
1431     * doc/cln.tex: Revert workaround description introduced 2005-05-02.
1432    
1433 haible 1.127 2005-06-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1434    
1435     * Makefile.in: Don't enter nonexisting directories.
1436    
1437 kreckel 1.126 2005-05-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1438    
1439     Speed up the linking step
1440     * src/Makefile.in: Use -objectlist for linking libcln.la.
1441    
1442 kreckel 1.125 2005-05-15 Richard B. Kreckel <kreckel@ginac.de>
1443    
1444     * autoconf/ltmain.sh: Upgrade to libtool-1.5.16.
1445     * m4/libtool.m4: Upgrade to libtool-1.5.16 (without Comeau patch).
1446    
1447 kreckel 1.124 2005-05-02 Richard B. Kreckel <kreckel@ginac.de>
1448    
1449     * doc/cln.tex: Document what to do on a x86_64 machine with 32-bit
1450     userland.
1451    
1452 kreckel 1.123 2005-05-01 Richard B. Kreckel <kreckel@ginac.de>
1453    
1454     Fix crashes in find_univpoly_ring and related functions
1455     * include/cln/modinteger.h: Remove vptr from cl_heap_modint_ring;
1456     remove declaration of cl_class cl_class_modint_ring.
1457     * include/cln/univpoly.h: Remove vptr from cl_heap_univpoly_ring;
1458     remove declaration of cl_class_univpoly_ring.
1459     * include/cln/object.h: cl_class_flags_modint_ring: New #define...
1460     * src/modinteger/cl_MI.cc: ...used in cl_class_modint_ring.
1461     * src/modinteger/cl_MI_fix16.h: No vptr, but static dtor and type flag.
1462     * src/modinteger/cl_MI_fix29.h: Likewise.
1463     * src/modinteger/cl_MI_fix32.h: Likewise.
1464     * src/modinteger/cl_MI_int32.h: Likewise.
1465     * src/modinteger/cl_MI_montgom.h: Likewise.
1466     * src/modinteger/cl_MI_pow2: Likewise.
1467     * src/modinteger/cl_MI_pow2m1.h: Likewise.
1468     * src/modinteger/cl_MI_pow2p1.h: Likewise.
1469     * src/modinteger/cl_MI_std.h: Likewise.
1470     * src/polynomial/elem/cl_UP.cc (cl_make_univpoly_ring): Compare with
1471     cl_class_flags_modint_ring, not with cl_class_modint_ring.
1472     * src/polynomial/elem/cl_UP_GF2.h (cl_class_num_univpoly_ring): New.
1473     * src/polynomial/elem/cl_UP_MI.h (cl_class_modint_univpoly_ring): New.
1474     * src/polynomial/elem/cl_UP_gen.h (cl_class_gen_univpoly_ring): New.
1475     * src/polynomial/elem/cl_UP_number.h (cl_class_num_univpoly_ring): New.
1476     Reported by Ralf Goertz <R_Goertz@web.de>.
1477    
1478 kreckel 1.122 2005-04-29 Richard B. Kreckel <kreckel@ginac.de>
1479     Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1480    
1481     * m4/cc.m4: Emit a warning if g++ is used and optimization turned off.
1482    
1483 kreckel 1.121 2005-04-24 Richard B. Kreckel <kreckel@ginac.de>
1484    
1485     Make GCC compiler flags default to -O
1486     * m4/cc.m4: New file...
1487     * configure.ac: ...used here.
1488     * autoconf/aclocal.m4: Regenerate.
1489    
1490 kreckel 1.120 2005-04-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1491    
1492     * include/cln/string.h: Declare cl_string.
1493    
1494 kreckel 1.119 2005-03-17 Richard B. Kreckel <kreckel@ginac.de>
1495    
1496     * autoconf/ltmain.sh: Upgrade to libtool-1.5.14.
1497     * m4/libtool.m4: Upgrade to libtool-1.5.14 with Comeau patch.
1498     * autoconf/aclocal.m4: Regenerate.
1499    
1500 kreckel 1.118 2005-03-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1501    
1502     * src/Makefile.in: Use $CXX instead of $CC when linking.
1503    
1504 kreckel 1.117 2005-02-27 Richard B. Kreckel <kreckel@ginac.de>
1505    
1506     * examples/perfnum.cc: update to presumed 42st Mersenne prime.
1507    
1508 kreckel 1.116 2004-11-28 Richard B. Kreckel <kreckel@ginac.de>
1509    
1510     Disambiguate binary operators of CLN types with float/double
1511     * include/cln/dfloat.h: Add binary operator overloads for arguments of
1512     type double.
1513     * include/cln/ffloat.h: Likewise, for arguments of type float.
1514     * include/cln/float.h: Likewise, both for arguments of types double and
1515     float.
1516     * include/cln/real.h: Likewise.
1517 kreckel 1.120 Reported by Isidro Cachadiña Gutiérrez <icacha@unex.es>.
1518 kreckel 1.116
1519 kreckel 1.115 2004-11-03 Richard B. Kreckel <kreckel@ginac.de>
1520    
1521     * Version 1.1.9 released.
1522    
1523 kreckel 1.114 2004-10-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1524    
1525     * src/Makefile.in: Let config.status set LDFLAGS.
1526    
1527 kreckel 1.113 2004-10-27 Peter Breitenlohner <peb@mppmu.mpg.de>
1528    
1529     * cln.pc.in: Fix typo.
1530     * Makefile.in (INSTALL_SCRIPT): Added, to be used for scripts like
1531     cln-config. Allows us to do special things to binaries, like
1532     installing them with install -s.
1533     * doc/Makefile.in: add/remove the cln.info from the installed
1534     $(infodir)/dir unless this is debian install-info (code copied from
1535     what GNU automake would produce).
1536    
1537 kreckel 1.112 2004-10-26 Richard B. Kreckel <kreckel@ginac.de>
1538    
1539     * src/integer/input/cl_I_read_stream.cc (read_integer): Fix a bug
1540     that caused radix specifiers to not work when reading from a stream.
1541     * src/rational/input/cl_RA_read_stream.cc (read_rational): Likewise.
1542     * src/real/input/cl_R_read_stream.cc (read_real): Likewise.
1543     * src/float/input/cl_F_read_stream.cc (read_float): Likewise.
1544     * src/complex/input/cl_N_read_stream.cc (read_complex): Likewise.
1545    
1546 kreckel 1.111 2004-10-25 Richard B. Kreckel <kreckel@ginac.de>
1547    
1548     * src/base/cl_low.h: Add mulu64 assembler macro for ia64.
1549    
1550 kreckel 1.110 2004-10-24 Richard B. Kreckel <kreckel@ginac.de>
1551    
1552     * src/base/cl_low.h: Add mul and div macros for x86_64.
1553    
1554 kreckel 1.109 2004-10-23 Richard B. Kreckel <kreckel@ginac.de>
1555    
1556     * src/integer/conv/cl_I_from_digits.cc (digits_to_I): Fix thinko in
1557     new code for base power of two.
1558    
1559 kreckel 1.108 2004-10-22 Richard B. Kreckel <kreckel@ginac.de>
1560    
1561     * src/integer/conv/cl_I_to_digits (I_to_digits): Fix an elusive stack
1562     overwriting problem. That was the real cause for Debian bug#246319.
1563     * src/integer/output/cl_I_print.cc (print_integer): Revert workaround
1564     for the bug fixed above.
1565    
1566 kreckel 1.107 2004-10-20 Richard B. Kreckel <kreckel@ginac.de>
1567    
1568     * include/cln/types.h: Use 64 bit digits on x86_64 CPU.
1569    
1570 kreckel 1.106 2004-10-12 Richard B. Kreckel <kreckel@ginac.de>
1571    
1572     * src/integer/conv/cl_I_from_digits.cc (digits_to_I): Speedup when
1573     the base is a power of two.
1574    
1575 kreckel 1.105 2004-10-05 Richard B. Kreckel <kreckel@ginac.de>
1576    
1577     * src/integer/conv/cl_I_to_digits.cc (I_to_digits): Fix bug in base 32.
1578    
1579 kreckel 1.104 2004-09-27 Richard B. Kreckel <kreckel@ginac.de>
1580    
1581     Support for little-endian Mips, second shot
1582     * src/base/digitseq/cl_asm_mipsel_.cc: New file...
1583     * src/base/digitseq/cl_asm_cc: ...used here.
1584     * src/base/digitseq/cl_asm.h: Include cl_asm_mips.h for any endianness.
1585     * include/cln/object.h: Set alignment for mipsel explicitly.
1586    
1587 kreckel 1.103 2004-09-05 Richard B. Kreckel <kreckel@ginac.de>
1588    
1589     Support for little-endian Mips
1590     * include/cln/config.h.in: Add __mipsel__.
1591     * include/cln/modules.h: For Mips, this is endianness-agnostic.
1592     * src/base/digitseq/cl_asm_.cc, src/base/digitseq/cl_asm.h:
1593     Mask out assembler for little-endian Mips.
1594    
1595 haible 1.102 2004-08-30 Bruno Haible <bruno@clisp.org>
1596    
1597     * benchmarks/timebench2.sh: Multiply all repeat counts by 100.
1598     * benchmarks/timebench2.results: Add recent PowerPC G4 results.
1599    
1600 kreckel 1.100 2004-08-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1601    
1602 haible 1.102 * examples/e.cc: remove extra semicolon.
1603 kreckel 1.100
1604 haible 1.98 2004-08-25 Bruno Haible <bruno@clisp.org>
1605    
1606     * autoconf/ltmain.sh: Upgrade to libtool-1.5.6.
1607     * m4/libtool.m4: New file, from libtool-1.5.6 with modifications:
1608 kreckel 1.101 2004-08-22 Bruno Haible <bruno@clisp.org>
1609 kreckel 1.150 * m4/libtool.m4: Add support for Comeau C++ on Linux.
1610     Reported by Prof. Roberto Bagnara <bagnara@cs.unipr.it>.
1611 haible 1.99 * autoconf/aclocal.m4: Regenerate.
1612 haible 1.98
1613 haible 1.97 2004-08-19 Bruno Haible <bruno@clisp.org>
1614    
1615     * include/cln/modules.h (CL_GLOBALIZE_JUMP_LABEL, CL_JUMP_TO): When
1616     converting a label to a string, use ASM_UNDERSCORE_PREFIX. Needed on
1617     MacOS X.
1618     Reported by Darren Bane <darren.bane@ul.ie>.
1619    
1620 kreckel 1.96 2004-07-01 Richard B. Kreckel <kreckel@ginac.de>
1621    
1622     * Version 1.1.8 released.
1623    
1624 kreckel 1.95 2004-06-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1625 kreckel 1.93
1626 kreckel 1.94 * src/base/cl_macros.h: alloca(3) has size_t argument type.
1627    
1628 kreckel 1.95 2004-06-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1629 kreckel 1.94
1630 kreckel 1.93 * include/cln/floatformat.h: Do define a type here.
1631    
1632 kreckel 1.92 2004-06-27 Richard B. Kreckel <kreckel@ginac.de>
1633    
1634     * include/cln/modules.h (CL_JUMP_TO): Fix AMD64 brokenness.
1635    
1636 haible 1.87 2004-06-23 Bruno Haible <bruno@clisp.org>
1637    
1638     * configure.ac: Pretend ftime() is not available. Needed by
1639     CL_TIMES_CLOCK.
1640    
1641 kreckel 1.91 2004-06-21 Ralf Stephan <ralf@ark.in-berlin.de>
1642    
1643     * doc/cln.tex: Document jacobi, isprobprime and nextprobprime.
1644    
1645 kreckel 1.86 2004-06-18 Richard B. Kreckel <kreckel@ginac.de>
1646    
1647     * rational/transcendental/cl_RA_logp.cc: fix bug where base is
1648     reciprocal of an integer.
1649 kreckel 1.91 Reported by Niklas Knutsson <nq@altern.org>.
1650 kreckel 1.86
1651 kreckel 1.89 2004-06-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1652    
1653     * src/complex/ring/cl_C_ring.cc, src/integer/ring/cl_I_ring.cc,
1654     src/rational/ring/cl_RA_ring.cc, src/real/ring/cl_R_ring.cc:
1655     Make template specializations explicit.
1656    
1657 kreckel 1.88 2004-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1658    
1659 kreckel 1.90 * src/complex/input/cl_N_read.cc, src/float/input/cl_F_read.cc,
1660     src/integer/input/cl_I_read.cc, src/rational/input/cl_RA_read.cc,
1661     src/real/input/cl_R_read.cc: Remove unused labels.
1662    
1663     2004-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1664    
1665 kreckel 1.88 * benchmarks/timebench1.cc, benchmarks/timebench2a.LiDIA.cc,
1666     benchmarks/timebench2a.cc, benchmarks/timebench2ap.cc,
1667     benchmarks/timebench2b.LiDIA.cc, benchmarks/timebench2b.cc,
1668     examples/atan_recip.cc, examples/atanh_recip.cc,
1669     examples/contfrac.cc, examples/e.cc, examples/legendre.cc,
1670     examples/lucaslehmer.cc, examples/pi.cc, include/cln/GV.h,
1671     include/cln/SV.h, include/cln/malloc.h, include/cln/modules.h,
1672     include/cln/object.h, include/cln/string.h, src/base/cl_abort.cc,
1673     src/base/cl_alloca.h, src/base/cl_malloc.cc,
1674     src/base/random/cl_random_from.cc,
1675     src/base/string/cl_spushstring_append.cc,
1676     src/base/string/cl_spushstring_push.cc,
1677     src/base/string/cl_st_debug.cc,
1678     src/base/string/input/cl_st_gettoken.cc,
1679     src/complex/input/cl_N_read.cc, src/float/input/cl_F_read.cc,
1680     src/float/output/cl_F_dprint.cc, src/integer/input/cl_I_read.cc,
1681     src/rational/input/cl_RA_read.cc,
1682     src/real/format-output/cl_fmt_integer.cc,
1683     src/real/format-output/cl_fmt_paddedstring.cc,
1684     src/real/input/cl_R_read.cc, src/timing/cl_t_current.cc,
1685     src/timing/cl_t_current2.cc, tests/exam.cc, tests/tests.cc,
1686     tests/timeLFRAmul.cc, tests/timeLFatan-compare.cc,
1687     tests/timeLFatan.cc, tests/timeLFatanh-compare.cc,
1688     tests/timeLFatanh.cc, tests/timeLFcos-compare.cc, tests/timeLFcos.cc,
1689     tests/timeLFcosh.cc, tests/timeLFexp-compare.cc, tests/timeLFexp.cc,
1690     tests/timeLFln-compare.cc, tests/timeLFln.cc,
1691     tests/timeLFsin-compare.cc, tests/timeLFsin.cc, tests/timeLFsinh.cc,
1692     tests/timeLFsqrt.cc, tests/timeMImisc5.cc, tests/timeMIpow2div.cc,
1693     tests/timeMIpow2recip.cc, tests/timeRALFdiv.cc, tests/timeRAtoLF.cc,
1694     tests/timeUPMImul.cc, tests/timecatalan.cc, tests/timediv.cc,
1695     tests/timediv2adic-compare.cc, tests/timediv2adic.cc,
1696     tests/timeeuler.cc, tests/timeexp1.cc, tests/timefact.cc,
1697     tests/timegcd.cc, tests/timemul-compare.cc, tests/timemul.cc,
1698     tests/timepi.cc, tests/timeprint-compare.cc, tests/timeprint.cc,
1699     tests/timerecip2adic-compare.cc, tests/timerecip2adic.cc,
1700     tests/timesqrt.cc, tests/timesqrtmodp.cc, tests/timesquare.cc,
1701     tests/timezeta3.cc: Change all C include headers to ISO style
1702     within C++ code.
1703    
1704 kreckel 1.85 2004-06-10 Richard B. Kreckel <kreckel@ginac.de>
1705    
1706     * examples/perfnum.cc: update to presumed 41st Mersenne prime.
1707    
1708 kreckel 1.83 2004-05-02 Richard B. Kreckel <kreckel@ginac.de>
1709    
1710 kreckel 1.84 * Version 1.1.7 released.
1711    
1712     2004-05-02 Richard B. Kreckel <kreckel@ginac.de>
1713    
1714 kreckel 1.83 * examples/pi.cc and examples/pi.1: New files.
1715     * examples/Makefile.in: Build the pi executable.
1716    
1717 kreckel 1.82 2004-05-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1718    
1719     * src/Makefile.in: Fix for parallel build: wait for subdir objects to
1720     be finished before creating the library.
1721    
1722 kreckel 1.81 2004-04-30 Richard B. Kreckel <kreckel@ginac.de>
1723    
1724     * src/integer/output/cl_I_print.cc (print_integer): workaround
1725     GCC compiler bug (cf. Debian bug#246319).
1726    
1727 kreckel 1.80 2004-03-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1728    
1729     * m4/gmp.m4 (CL_GMP_CHECK): Do not lose LIBS setting with config.cache
1730     enabled.
1731    
1732 haible 1.78 2004-03-08 Bruno Haible <bruno@clisp.org>
1733    
1734     * src/float/lfloat/elem/cl_LF_mul.cc (operator*): Fix the second
1735     underflow condition.
1736 haible 1.79 * src/float/lfloat/algebraic/cl_LF_sqrt.cc (sqrt): Fix a bug with large
1737     uexp whereby SQRT of MOST-POSITIVE-LONG-FLOAT was less than 1.
1738 haible 1.78
1739 kreckel 1.77 2004-03-04 Richard B. Kreckel <kreckel@ginac.de>
1740    
1741     * Makefile.in (install): Add ${srcdir} for cln.m4.
1742     * m4/gmp.m4: quote macro names.
1743     Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
1744    
1745 kreckel 1.75 2004-01-01 Richard B. Kreckel <kreckel@ginac.de>
1746    
1747 kreckel 1.76 * Version 1.1.6 released.
1748    
1749     2004-01-01 Richard B. Kreckel <kreckel@ginac.de>
1750    
1751 kreckel 1.75 * include/cln/univpoly.h, include/cln/univpoly_complex.h,
1752     include/cln//univpoly_integer.h, include/cln/univpoly_modint.h,
1753     include/cln/univpoly_rational.h, include/cln/univpoly_real.h,
1754     src/polynomial/elem/cl_UP_GF2.h, src/polynomial/elem/cl_UP_MI.h,
1755     src/polynomial/elem/cl_UP_gen.h, src/polynomial/elem/cl_UP_no_ring.cc,
1756     src/polynomial/elem/cl_UP_number.h (ldegree): New function.
1757     * doc/cln.tex: Document `ldegree'.
1758    
1759 kreckel 1.74 2003-12-29 Richard B. Kreckel <kreckel@ginac.de>
1760    
1761     Rework of autoconfiscation infrastructure
1762     * autoconf/config.{guess,sub}: Update to GNU version 2003-10-07.
1763     * autoconf/ltmain.sh: Update to GNU version 1.4.3.
1764     * autoconf/autoconf: Remove (from now on we assume autoconf is
1765     installed properly on the sytem).
1766     * autoconf/autoconf.m4: Likewise.
1767     * autoconf/autoconf.m4f: Likewise.
1768     * autoconf/acgeneral.m4: Likewise.
1769     * autoconf/acspecific.m4: Likewise.
1770     * autoconf/aclocal.m4: Regenerate.
1771     * autoconf/acinclude.m4: Remove (while moving the macros...)
1772     * m4/gmp.m4: New file (...to here).
1773     * Makefile.devel: Update to new scheme.
1774     * configure.ac: Likewise.
1775     * include/cln/GV_integer.h: Assume template specializations work.
1776     * include/cln/GV_modinteger.h: Likewise.
1777     * include/cln/config.h.in: Likewise, and drop HAVE_BOOL.
1778     * src/base/cl_base_config.h.in: Drop support for obsolete ftime(3).
1779     * src/base/random/cl_random_from.cc: Likewise.
1780     * src/timing/cl_base_config.h.in: Likewise.
1781     * src/timing/cl_t_current.cc: Likewise.
1782    
1783 kreckel 1.73 2003-12-27 Richard B. Kreckel <kreckel@ginac.de>
1784    
1785     * src/polynomial/cl_UP_gen.h (gen_minus): Fix case where first
1786     argument is zero.
1787     * src/polynomial/cl_UP_MI.h (modint_minus): Likewise.
1788     * src/polynomial/cl_UP_number.h (num_minus): Likewise.
1789     Reported by Munagala Ramanath <amberarrow@yahoo.com>.
1790    
1791 kreckel 1.72 2003-12-02 Richard B. Kreckel <kreckel@ginac.de>
1792    
1793     * examples/perfnum.cc: update to presumed 40th Mersenne prime.
1794    
1795 kreckel 1.75 2003-11-20 Christian Bauer <cbauer@ginac.de>
1796    
1797     Added pkg-config support
1798     * cln.pc.in: New file.
1799     * Makefile.in: Take care of cln.pc.
1800     * configure.ac: Likewise.
1801    
1802     2003-08-06 Richard B. Kreckel <kreckel@ginac.de>
1803 kreckel 1.71
1804     * src/numtheory/cl_nt_sqrtmodp.cc: #undef _R.
1805     Reported by Andrew Rechnitzer <A.Rechnitzer@ms.unimelb.edu.au>.
1806    
1807 kreckel 1.70 2003-08-01 Richard Kreckel <kreckel@ginac.de>
1808    
1809     More dependent base resolution issues
1810     * src/base/hash/cl_hash.h (cl_heap_hashtable<T>::iterator()):
1811     portable syntactic simplification.
1812     * src/base/hash/cl_hashset.h: Preceed inherited members with this->.
1813     * src/base/hash/cl_hash1.h: Likewise for member functions.
1814     * src/base/hash/cl_hash2.h: Likewise.
1815     * src/base/hash/cl_hashuniq.h: Likewise.
1816     * src/base/hash/cl_hashuniqweak.h: Likewise.
1817     * src/base/hash/cl_hash.h: Revert explicit static member function
1818     lookup since that was GCC's fault.
1819     * src/base/hash/cl_hash2weak.h: Likewise.
1820     * src/base/hash/cl_hashuniqweak.h: Likewise.
1821    
1822 kreckel 1.69 2003-06-29 Richard Kreckel <kreckel@ginac.de>
1823    
1824     Dependent base resolution needed for GCC-3.4
1825     * include/cln/GV.h: Preceed inherited members with this->.
1826     * include/cln/SV.h: Likewise.
1827     * include/cln/object.h: Likewise.
1828     * src/base/hash/cl_hash1.h: Likewise.
1829     * src/base/hash/cl_hash1weak.h: Likewise.
1830     * src/base/hash/cl_hash2.h: Likewise.
1831     * src/base/hash/cl_hashuniq.h: Likewise.
1832     * src/base/hash/cl_hash.h: Make lookup of static member function
1833     explicit.
1834     * src/base/hash/cl_hash2weak.h: Likewise.
1835     * src/base/hash/cl_hashuniqweak.h: Likewise.
1836     * src/modinteger/cl_MI.cc: Make shell-comment a C-comment. Geez.
1837    
1838 haible 1.68 2003-02-24 Bruno Haible <bruno@clisp.org>
1839 haible 1.67
1840     * src/base/random/cl_random_from.cc (random_state::random_state): Add
1841     support for MacOS X.
1842 haible 1.68 * src/modinteger/cl_MI.cc: #undef _R.
1843 haible 1.67 Reported by Erann Gat <gat@jpl.nasa.gov>.
1844    
1845 haible 1.66 2002-08-03 Joerg Arndt <jj@suse.de>
1846    
1847     * include/cln/config.h.in: Add support for x86_64 CPU.
1848     * include/cln/modules.h: Likewise.
1849     * include/cln/types.h: Likewise.
1850     * include/cln/object.h: Likewise.
1851    
1852 kreckel 1.65 2002-06-08 Richard Kreckel <kreckel@ginac.de>
1853    
1854     * src/base/digitseq/cl_asm.h: ensure intCsize==16 when including
1855     m68k Assembler routines.
1856     * src/base/digitseq/cl_asm_.cc: Likewise.
1857    
1858 kreckel 1.64 2002-05-28 Richard Kreckel <kreckel@ginac.de>
1859    
1860     * Version 1.1.5 released.
1861    
1862 kreckel 1.63 2002-05-27 Richard Kreckel <kreckel@ginac.de>
1863    
1864     * include/cln/modules.h (CL_CONCATENATE): New macro.
1865    
1866 kreckel 1.62 2002-05-10 Richard Kreckel <kreckel@ginac.de>
1867    
1868     * doc/cln.tex (Building the library): Update recommendations for
1869     compiling on Tru64 using g++ 3.0 and 3.1.
1870     * README: Update homepage.
1871    
1872 haible 1.58 2002-05-05 Bruno Haible <bruno@clisp.org>
1873    
1874 haible 1.61 * doc/cln.tex (Building the library): Give some recommendations for
1875     g++ 3.0 and 3.1.
1876    
1877 haible 1.60 Force link-time references despite optimizations done by g++ 2.95
1878     and newer.
1879     * include/cln/modules.h (CL_FORCE_LINK): New macro.
1880     * Use CL_FORCE_LINK.
1881     * include/cln/GV_integer.h (cl_GV_I_debug_dummy): Likewise.
1882     * include/cln/GV_number.h (cl_GV_number_debug_dummy): Likewise.
1883     * include/cln/SV_number.h (cl_SV_number_debug_dummy): Likewise.
1884     * include/cln/SV_ringelt.h (cl_SV_ringelt_debug_dummy): Likewise.
1885     * include/cln/dfloat.h (cl_DF_debug_dummy): Likewise.
1886     * include/cln/ffloat.h (cl_FF_classes_dummy, cl_FF_debug_dummy):
1887     Likewise.
1888     * include/cln/integer.h (cl_I_classes_dummy, cl_I_debug_dummy):
1889     Likewise.
1890     * include/cln/lfloat.h (cl_LF_debug_dummy): Likewise.
1891     * include/cln/modinteger.h (cl_MI_debug_dummy): Likewise.
1892     * include/cln/rational.h (cl_RA_debug_dummy): Likewise.
1893     * include/cln/real.h (cl_R_debug_dummy): Likewise.
1894     * include/cln/ring.h (cl_ring_debug_dummy): Likewise.
1895     * include/cln/sfloat.h (cl_SF_classes_dummy, cl_SF_classes_dummy):
1896     Likewise.
1897     * include/cln/string.h (cl_string_debug_dummy): Likewise.
1898     * include/cln/univpoly.h (cl_UP_debug_dummy): Likewise.
1899     * src/float/base/cl_ieee.h (cl_ieee_dummy_NNN): Likewise.
1900    
1901 haible 1.58 Avoid g++ 3.1 warnings.
1902 haible 1.59 * src/base/cl_offsetof.h (offsetof): Redefine each time.
1903     * src/base/digitseq/cl_DS.h: Include "cl_offsetof.h" after <gmp.h>.
1904    
1905     Avoid g++ 3.1 warnings.
1906 haible 1.58 * src/base/hash/cl_hash.h (struct cl_heap_hashtable): Use typename
1907     where needed.
1908     * src/base/hash/cl_hash1.h (struct cl_heap_hashtable_1): typedef
1909     htxentry as a shortcut.
1910     * src/base/hash/cl_hash2.h (struct cl_heap_hashtable_2): Likewise.
1911     * src/base/hash/cl_hashset.h (struct cl_heap_hashtable_set): Likewise.
1912     * src/base/hash/cl_hashuniq.h (struct cl_heap_hashtable_uniq):
1913     Likewise.
1914    
1915 haible 1.57 2002-03-15 Bruno Haible <bruno@clisp.org>
1916    
1917     * cln.tex: Document problem with GNU make 3.77.
1918     Reported by Michael Somos <somos@grail.cba.csuohio.edu>.
1919    
1920 kreckel 1.56 2002-02-16 Richard Kreckel <kreckel@ginac.de>
1921    
1922 kreckel 1.150 * cln.m4: quote macro name.
1923     Pointed out by Roberto Bagnara.
1924 kreckel 1.56
1925 kreckel 1.55 2002-01-20 Richard Kreckel <kreckel@ginac.de>
1926    
1927 kreckel 1.150 * autoconf/config.{guess,sub}: Update to GNU version 2002-01-02.
1928     (the old one was broken on Linux/Mips.)
1929 kreckel 1.55
1930 kreckel 1.54 2002-01-04 Richard Kreckel <kreckel@ginac.de>
1931    
1932 kreckel 1.150 * autoconf/autoconf.m4f: get brutal in order to adhere to FHS.
1933     * Version 1.1.4 released.
1934 kreckel 1.54
1935 kreckel 1.53 2002-01-03 Richard Kreckel <kreckel@ginac.de>
1936    
1937 kreckel 1.150 * autoconf/acinclude.m4: revamp MPN-matcher.
1938     * autoconf/aclocal.m4: upgrade to autoconf-2.52 infrastructure,
1939     sync with CLisp from CVS.
1940     * autoconf/autoconf: Likewise.
1941     * autoconf/autoconf.m4f: Likewise (new file).
1942     * configure.ac: Likewise (new file, replaces configure.in).
1943     * configure.in: Likewise (deleted, replaced by configure.ac).
1944     * autoconf/config.{guess,sub}: Update to GNU version 2001-12-13.
1945     * src/Makefile.in: made VPATH safe for autoconf-2.52.
1946     * include/cln/config.h.in: Add __s390__.
1947 kreckel 1.53
1948 kreckel 1.52 2001-12-31 Richard Kreckel <kreckel@ginac.de>
1949    
1950 kreckel 1.150 * src/base/digitseq/cl_DS.h: <gmp.h> is not included extern "C"
1951     any more since GMP4 has some C++ support in it.
1952 kreckel 1.52
1953 kreckel 1.51 2001-12-14 Richard Kreckel <kreckel@ginac.de>
1954    
1955 kreckel 1.150 * include/cln/modules.h, include/cln/object.h: add support for
1956     s390.
1957     * src/numtheory/cl_nt_sqrtmodp.cc: workaround for GCC2.x compiler-bug
1958     on s390, provided by Gerhard Tonn.
1959 kreckel 1.51
1960 kreckel 1.50 2001-11-05 Richard Kreckel <kreckel@ginac.de>
1961    
1962 kreckel 1.150 * autoconf/ltmain.sh: Upgrade to libtool-1.4.2.
1963     * autoconf/config.{guess,sub}: Update to GNU version 2001-09-07.
1964     * Version 1.1.3 released.
1965 kreckel 1.50
1966 haible 1.49 2001-11-04 Bruno Haible <haible@clisp.cons.org>
1967    
1968 kreckel 1.150 Interoperability with gcc-3.0 -fuse-cxa-atexit.
1969     * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add test whether
1970     global destructors actually exist.
1971     * include/cln/modules.h (CL_PROVIDE, CL_PROVIDE_END, CL_PROVIDE_END):
1972     Don't hack the global destructors if there is no global destructors
1973     function.
1974 haible 1.49
1975 kreckel 1.47 2001-11-03 Richard Kreckel <kreckel@ginac.de>
1976    
1977 kreckel 1.150 * src/float/transcendental/cl_F_sinx.cc (sinx_naive): For small
1978     values of x, return square(x) instead of x.
1979     * src/float/transcendental/cl_F_sinhx.cc (sinhx_naive): Likewise.
1980 kreckel 1.47
1981     2001-07-25 Richard Kreckel <kreckel@ginac.de>
1982 kreckel 1.46
1983 kreckel 1.150 * Version 1.1.2 released.
1984 kreckel 1.46
1985 kreckel 1.47 2001-07-24 Richard Kreckel <kreckel@ginac.de>
1986 kreckel 1.45
1987 kreckel 1.150 * src/base/hash/cl_hash.h: declare _cl_hashtable_iterator<htentry> a
1988     friend of cl_heap_hashtable<htentry>.
1989 kreckel 1.45
1990 kreckel 1.47 2001-07-22 Richard Kreckel <kreckel@ginac.de>
1991 kreckel 1.44
1992 kreckel 1.150 * src/float/base/cl_ieee.cc: try to do magic to the FPU only if
1993     _FPU_IEEE is really defined.
1994     * include/cln/modules.h: change assembler labels from `label' to
1995     `label:' on hppa, needed by Linux (see comment).
1996     * autoconf/acinclude.m4: new file (for storing CLN-specific macros).
1997     * Makefile.devel: adjusted.
1998     * autoconf/aclocal.m4: regenerate.
1999     * src/base/low/cl_low_mul.cc: moved POD variables that are declared
2000     extern "C" elsewhere out of the namespace.
2001     * src/base/low/cl_low_div.cc: Likewise.
2002 kreckel 1.44
2003 kreckel 1.47 2001-06-08 Bruno Haible <haible@clisp.cons.org>
2004 haible 1.43
2005 kreckel 1.150 * autoconf/config.{guess,sub}: Update to GNU version 2001-05-11.
2006     * autoconf/aclocal.m4: Upgrade to libtool-1.4.
2007     * autoconf/ltmain.sh: Likewise.
2008     * autoconf/ltconfig: Remove file.
2009     * autoconf/install-sh: New file.
2010     * configure.in: Add AC_CONFIG_AUX_DIR call.
2011 haible 1.43
2012 kreckel 1.47 2001-06-05 Richard Kreckel <kreckel@ginac.de>
2013 kreckel 1.42
2014 kreckel 1.150 * tests/tests.cc: resolve namespace ambiguity about strcmp().
2015 kreckel 1.42
2016 kreckel 1.47 2001-05-31 Richard Kreckel <kreckel@ginac.de>
2017 kreckel 1.41
2018 kreckel 1.150 * Version 1.1.1 released.
2019 kreckel 1.41
2020 kreckel 1.40 2001-05-28 Richard Kreckel <kreckel@ginac.de>
2021    
2022 kreckel 1.150 * cln/cln.tex: documented problems with shared library on Sparc
2023     using gcc older than 2.95.3.
2024     * configure.in: Fixed typos in versioning docu.
2025 kreckel 1.40
2026 haible 1.39 2001-05-25 Bruno Haible <haible@clisp.cons.org>
2027    
2028 kreckel 1.150 * src/base/digitseq/cl_asm_arm_.cc: Use #0x instead of #& to designate
2029     hexadecimal constants.
2030 haible 1.39
2031 kreckel 1.38 2001-05-25 Richard Kreckel <kreckel@ginac.de>
2032    
2033 kreckel 1.150 * autoconf/floatparam.c (double_wordorder_bigendian_p): new symbol.
2034     * src/float/dfloat/cl_DF.h: Check for double_wordorder_bigendian_p.
2035     * Removed LiDIA interface since that is now outdated (namespace cln)
2036     and maintained elsewhere.
2037     * Adjusted dates and final touches for 1.1.1.
2038 kreckel 1.38
2039 kreckel 1.37 2001-05-19 Richard Kreckel <kreckel@ginac.de>
2040    
2041 kreckel 1.150 * INSTALL: Update toolchain info: no egcs, some more platforms.
2042     * doc/cln.tex: Likewise.
2043 kreckel 1.37
2044 kreckel 1.36 2001-05-18 Richard Kreckel <kreckel@ginac.de>
2045    
2046 kreckel 1.150 * src/base/cl_low.h: prepended variables declared inside macros
2047     with underscore. Fixes equal_hashcode() on various platforms.
2048 kreckel 1.36
2049 kreckel 1.35 2001-04-25 Richard Kreckel <kreckel@ginac.de>
2050    
2051 kreckel 1.150 * src/base/cl_low.h: Added several checks if NO_ASM is defined, so
2052     this definition becomes actually useful. This is needed for
2053     compilation on Arm until somebody fixes the assembler files for Arm.
2054     * src/base/digitseq/cl_asm.h: Likewise.
2055     * src/base/digitseq/cl_asm_.cc: Likewise.
2056     * */Makefile.in: Added `override' in front of `CPPFLAGS +=' so
2057     one can say `make CPPFLAGS=-DFOOBAR'.
2058 kreckel 1.35
2059 kreckel 1.34 2001-03-26 Arvid Norberg <c99ang@cs.umu.se>
2060    
2061 kreckel 1.150 * src/base/random/cl_random_from.cc: ported to beos.
2062 kreckel 1.34
2063 kreckel 1.33 2001-03-05 Richard Kreckel <kreckel@ginac.de>
2064    
2065 kreckel 1.150 * include/cln/modules.h (CL_JUMP_TO): Fix IA64 brokenness.
2066 kreckel 1.33
2067 kreckel 1.32 2001-01-28 Richard Kreckel <kreckel@ginac.de>
2068    
2069 kreckel 1.150 * include/cln/number.h (cl_as_N): Remove bogus comment.
2070 kreckel 1.32
2071 kreckel 1.31 2001-01-22 Richard Kreckel <kreckel@ginac.de>
2072    
2073 kreckel 1.150 * configure.in: Make build in separate builddir possible (again).
2074 kreckel 1.31
2075     2001-01-22 Richard Kreckel <kreckel@ginac.de>
2076    
2077 kreckel 1.150 * include/cln/*.h: Change signatures of all classes' methods
2078     cln::cl_foo::operator new(size_t, cl_foo*) to
2079     cln::cl_foo::operator new(size_t, void*) so one can declare
2080     std::vector<cln::cl_foo>, std::list<cln::cl_foo> etc. for
2081     certain STL implementations (like libstdc++-v3).
2082 kreckel 1.31
2083 kreckel 1.30 2000-12-14 Richard Kreckel <kreckel@ginac.de>
2084    
2085 kreckel 1.150 * Version 1.1 released.
2086 kreckel 1.30
2087     2000-12-13 Richard Kreckel <kreckel@ginac.de>
2088    
2089 kreckel 1.150 * */*: cl_istream -> std::istream, cl_ostream -> std::ostream.
2090 kreckel 1.30
2091 kreckel 1.29 2000-12-05 Richard Kreckel <kreckel@ginac.de>
2092    
2093 kreckel 1.150 * Makefile.in, src/Makefile.in, doc/Makefile.in: Use mkdir -p.
2094     * include/cln/version.h.in, src/base/verion.cc: New files.
2095     * configure.in: Generate include/cln/version.h.
2096     * cln.m4: Rewrote it. Check result of cln-config without compiling.
2097     Do cross-check library version and header version information.
2098 kreckel 1.29
2099     2000-12-02 Christian Bauer <cbauer@ginac.de>
2100    
2101 kreckel 1.150 * Makefile.in, src/Makefile.in, doc/Makefile.in: Added $DESTDIR.
2102     * cln.m4, cln.spec.in: some minor fixes with respect to RPM package
2103     building.
2104 kreckel 1.29
2105 kreckel 1.28 2000-11-24 Richard Kreckel <kreckel@ginac.de>
2106    
2107 kreckel 1.150 * */*: Removed problematic stdin, stdout and stderr definitions.
2108     Use std::cin, std::cout, std::cerr instead (obsoletes 2000-10-29).
2109 kreckel 1.28
2110 haible 1.27 2000-11-20 Bruno Haible
2111    
2112 kreckel 1.150 * cln-config.1: change title.
2113 haible 1.27
2114 kreckel 1.26 2000-11-18 Richard Kreckel <kreckel@ginac.de>
2115    
2116 kreckel 1.150 * cln.m4: New file.
2117     * doc/cln.tex: Document package tools cln-config and cln.m4.
2118     * Makefile.in: Care about cln.m4.
2119 kreckel 1.26
2120 kreckel 1.25 2000-11-17 Richard Kreckel <kreckel@ginac.de>
2121    
2122 kreckel 1.150 * cln-config.1: added manpage, as required by a couple of distros.
2123     * Makefile.in, doc/Makefile.in: target install depends on installdirs.
2124 kreckel 1.25
2125 kreckel 1.24 2000-11-16 Richard Kreckel <kreckel@ginac.de>
2126    
2127 kreckel 1.150 * autoconf/aclocal.m4 (CL_GMP_SET_UINTD): New macro...
2128     * configure.in: ...used here.
2129     * include/cln/config.h.in: Put in macros defined by CL_GMP_SET_UINTD...
2130     * include/cln/types.h: ...used here.
2131     * autoconf/acgeneral.m4, autoconf/aclocal.m4: Adhere to FHS.
2132 kreckel 1.24
2133 kreckel 1.23 2000-11-13 Richard Kreckel <kreckel@ginac.de>
2134    
2135 kreckel 1.150 * src/base/digitseq/cl_asm.h: Test if (intDsize==32) for MIPS and HPPA,
2136     in order to guard against an accidented configuration.
2137     * src/integer/conv/cl_I_to_digits.cc (table): member b_hoch_k of
2138     struct power_table_entry initialized as ULL instead of as UL, if
2139     intDsize==64 (caused misprinting on MIPS w/ GMP).
2140     * src/base/cl_macros.h (minus_bitm, bitc): implemented ULL, if
2141     HAVE_FAST_LONGLONG.
2142     * src/integer/bitwise/cl_I_mkfx.cc (mkf_extract): Likewise.
2143     * src/integer/conv/cl_I_from_L.cc (cl_I_from_L): Added trival
2144     generation of Bignum for intDsize==64 and a notreached-check at end.
2145     * autoconf/config.guess, autoconf/config.sub: updated from FSF.
2146     * include/cln/config.h.in: Prepared support for IA64.
2147     * include/cln/types.h: Likewise.
2148     * include/cln/object.h: Likewise.
2149     * include/cln/modules.h: Likewise.
2150     * src/base/cl_macros.h (nonreturning_function): Likewise (NUE's
2151     compiler claims __GNUC_MINOR__==9).
2152 kreckel 1.23
2153     2000-11-03 Richard Kreckel <kreckel@ginac.de>
2154    
2155 kreckel 1.150 * src/base/cl_macros.h (bit, minus_bit): changed criterion for ULL from
2156     HAVE_DD to HAVE_FAST_LONGLONG.
2157     * src/base/cl_macros.h (bitm): implemented ULL, if HAVE_FAST_LONGLONG.
2158     * src/base/cl_low.h: actually no need to include "cln/types.h" here.
2159     * src/base/cl_low.h (logcount_64): always ULL, independent of HAVE_DD.
2160     * src/base/random/cl_UL_random.cc (random32): a is always ULL.
2161 kreckel 1.23
2162 kreckel 1.22 2000-11-01 Richard Kreckel <kreckel@ginac.de>
2163    
2164 kreckel 1.150 * include/cln/object.h (cl_combine): define additional signatures, if
2165     HAVE_LONGLONG is defined, in order to keep the compiler happy.
2166     * src/base/cl_macros.h: include "cln/types.h", since we need HAVE_DD...
2167     * src/base/cl_macros.h (bit): ...for this macro...
2168     * src/base/cl_macros.h (minus_bit): ...and this one.
2169     * src/base/cl_low.h: include "cln/types.h", since we need HAVE_DD...
2170     * src/base/cl_low.h (logcount_64): ...for this macro.
2171     * src/base/random/cl_UL_random.cc (random32): if HAVE_DD a is an ULL.
2172     * src/integer/gcd/cl_I_gcd_aux2.cc (floorDD): fixed algorithmic bug.
2173     that turned up when intDsize==32 and cl_word_size==64.
2174     * src/float/dfloat/elem/cl_DF_div.cc (operator/): fixed a missing cast
2175     to uint64 that turned up when intDsize==32 and cl_word_size==64.
2176 kreckel 1.22
2177 kreckel 1.21 2000-10-29 Richard Kreckel <kreckel@ginac.de>
2178    
2179 kreckel 1.150 * src/real/input/cl_R_read.cc, src/complex/input/cl_N_read.cc:
2180     #undef stderr, if it's defined so cln::stderr isn't confused.
2181     * src/base/input/cl_read_globals.cc: stdin should not be extern.
2182 kreckel 1.21
2183 kreckel 1.19 2000-09-05 Richard Kreckel <kreckel@ginac.de>
2184    
2185 kreckel 1.150 * include/cln/number.h (As): Fix it in namespace by suffixing `_As'
2186     to the appropiate method instead of prefixing `as_'.
2187     * src/complex/misc/cl_N_as.cc (cl_N_As): Likewise.
2188     * src/real/misc/cl_R_as.cc (cl_R_As): Likewise.
2189     * src/rational/misc/cl_RA_as.cc (cl_RA_As): Likewise.
2190     * src/integer/misc/cl_I_as.cc (cl_I_As): Likewise.
2191     * src/float/misc/cl_F_as.cc (cl_F_As): Likewise.
2192     * src/float/sfloat/misc/cl_SF_as.cc (cl_SF_As): Likewise.
2193     * src/float/lfloat/misc/cl_LF_as.cc (cl_LF_As): Likewise.
2194     * src/float/ffloat/misc/cl_FF_as.cc (cl_FF_As): Likewise.
2195     * src/float/dfloat/misc/cl_DF_as.cc (cl_DF_As): Likewise.
2196 kreckel 1.20
2197     2000-09-05 Richard Kreckel <kreckel@ginac.de>
2198    
2199 kreckel 1.150 * src/complex/transcendental/cl_C_expt_C.cc (expt): fix logic for
2200     the 0^y cases.
2201 kreckel 1.19
2202 kreckel 1.18 2000-08-30 Richard Kreckel <kreckel@ginac.de>
2203    
2204 kreckel 1.150 * include/cln/number.h, cl_number::_as_cl_private_thing(): removed.
2205     Rearranged for a clearer distinction between macros and remaining
2206     identifiers, so Cint can parse it smoothly.
2207 kreckel 1.18
2208 kreckel 1.17 2000-08-29 Richard Kreckel <kreckel@ginac.de>
2209    
2210 kreckel 1.150 * include/cln/number.h, the(const cl_number& x): New template
2211     function.
2212 kreckel 1.17
2213 kreckel 1.18 2000-08-29 Richard Kreckel <kreckel@ginac.de>
2214    
2215 kreckel 1.150 * */*: Pushed CLN into a namespace `cln'. While doing so, the
2216     following identifiers got their poor-man's namespace (i.e. the
2217     prefix `cl_') stripped off:
2218     cl_catalanconst() -> catalanconst()
2219     cl_compare() -> compare()
2220     cl_cos_sin() -> cos_sin()
2221     cl_cos_sin_t -> cos_sin_t
2222     cl_cosh_sinh() -> cosh_sinh()
2223     cl_cosh_sinh_t -> cosh_sinh_t
2224     cl_decoded_dfloat -> decoded_dfloat
2225     cl_decoded_ffloat -> decoded_ffloat
2226     cl_decoded_float -> decoded_float
2227     cl_decoded_lfloat -> decoded_lfloat
2228     cl_decoded_sfloat -> decoded_sfloat
2229     cl_default_float_format -> default_float_format
2230     cl_default_print_flags -> default_print_flags
2231     cl_default_random_state -> default_random_state
2232     cl_double_approx() -> double_approx()
2233     cl_equal() -> equal()
2234     cl_equal_hashcode() -> equal_hashcode()
2235     cl_eulerconst() -> eulerconst()
2236     cl_find_modint_ring() -> find_modint_ring()
2237     cl_find_univpoly_ring() -> find_univ_poly_ring()
2238     cl_float_approx() -> float_approx
2239     cl_float_format() -> float_format()
2240     cl_float_format_t -> float_format_t
2241     cl_free_hook() -> free_hook()
2242     cl_hermite() -> hermite()
2243     cl_laguerre() -> laguerre()
2244     cl_legendre() -> legandre()
2245     cl_malloc_hook() -> malloc_hook()
2246     cl_pi() -> pi()
2247     cl_tschebychev() -> tschebychev()
2248     cl_zeta() -> zeta()
2249     NB: For functions these changes includes all signatures.
2250     * include/*: moved to include/cln/*, stripped `cl_' off filenames.
2251     * cln-config.in: new file.
2252 kreckel 1.18
2253 haible 1.16 2000-08-26 Bruno Haible <haible@clisp.cons.org>
2254    
2255 kreckel 1.150 * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
2256     value, not parens.
2257 haible 1.16
2258 haible 1.15 2000-08-18 Bruno Haible <haible@clisp.cons.org>
2259    
2260 kreckel 1.150 * include/cl_univpoly_modint.h: Fix typo.
2261 haible 1.15
2262 haible 1.14 2000-07-13 Bruno Haible <haible@clisp.cons.org>
2263    
2264 kreckel 1.150 * src/float/input/cl_F_read_stream.cc (number_char_p): Accept '_',
2265     used as precision marker for floats.
2266     Reported by Keith Briggs (in 1998) and Thomas Roessler.
2267     * src/integer/input/cl_I_read_stream.cc (number_char_p): Likewise.
2268     * src/rational/input/cl_RA_read_stream.cc (number_char_p): Likewise.
2269     * src/real/input/cl_R_read_stream.cc (number_char_p): Likewise.
2270     * src/complex/input/cl_N_read_stream.cc (number_char_p): Likewise.
2271 haible 1.14
2272 haible 1.13 2000-06-22 Bruno Haible <haible@clisp.cons.org>
2273    
2274 kreckel 1.150 * include/cl_object.h: Rename cl_word_size to cl_pointer_size.
2275     * include/cl_types.h (HAVE_FAST_LONGLONG): Also define on Irix6
2276     with N32 ABI.
2277     (cl_word_size): New macro.
2278     * src/float/sfloat/cl_SF.h: Use cl_pointer_size instead of
2279     cl_word_size.
2280 haible 1.13
2281 haible 1.11 2000-05-31 Bruno Haible <haible@clisp.cons.org>
2282    
2283 kreckel 1.150 * tests/exam_I_floor.cc (integer_floor_tests): Add one more entry.
2284     From a sample that fails with gcc-2.95.2 on Sparc.
2285     * tests/exam_I_gcd.cc (integer_gcd_tests): Likewise.
2286 haible 1.11
2287 kreckel 1.10 2000-05-30 Richard Kreckel <kreckel@ginac.de>
2288    
2289 kreckel 1.150 * configure.in, autoconf/aclocal.m4 (CL_GMP_H_VERSION, CL_GMP_CHECK):
2290     New macros.
2291     * configure.in, include/cl_config.h.in (CL_VERSION, CL_VERSION_MINOR,
2292     CL_VERSION_PATCHLEVEL): New definitions.
2293     * autoconf/config.guess, autoconf/config.sub, autoconf/ltconfig,
2294     autoconf/ltmain.sh: updated from FSF (libtool 1.3.5, etc).
2295     * src/Makefile.in, configure.in: release-variables renamed from
2296     CLN_* to CL_*.
2297     * configure.in: default to build both shared and static library
2298     (i.e. default to the most common behaviour).
2299 kreckel 1.10
2300 kreckel 1.9 2000-05-29 Richard Kreckel <kreckel@ginac.de>
2301    
2302 kreckel 1.150 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Added missing changequote
2303     environment around the patch of 2000-05-23.
2304 kreckel 1.9
2305 haible 1.8 2000-05-29 Bruno Haible <haible@clisp.cons.org>
2306    
2307 kreckel 1.150 * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
2308     Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
2309 haible 1.8
2310 kreckel 1.7 2000-05-27 Richard Kreckel <kreckel@ginac.de>
2311    
2312 kreckel 1.150 * src/float/lfloat/algebraic/cl_LF_sqrt.cc,
2313     src/base/digitseq/cl_DS_sqrt.cc: Readjusted break-even points.
2314 kreckel 1.7
2315 kreckel 1.6 2000-05-24 Richard Kreckel <kreckel@ginac.de>
2316    
2317 kreckel 1.150 * autoconf/config.*: Updated to new version from FSF
2318     (the new libtool wants this).
2319     * src/Makefile.in: added $(LDFLAGS) to link step.
2320     * src/base/digitseq/cl_2DS_div.cc, cl_2DS_recip.cc: Readjusted
2321     break-even points.
2322 kreckel 1.6
2323 haible 1.5 2000-05-23 Bruno Haible <haible@clisp.cons.org>
2324    
2325 kreckel 1.150 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
2326     host_vendor, host_os correctly if $host has more than two hyphens.
2327 haible 1.5
2328 kreckel 1.4 2000-05-19 Richard Kreckel <kreckel@ginac.de>
2329    
2330 kreckel 1.150 * src/base/digitseq/cl_DS_mul.cc: Rearranged break-even points to
2331     better match present-day CPUs whenever GMP3 is used.
2332     * src/base/digitseq/cl_DS_div.cc: dto.
2333     * src/TUNING: Added comment about order of tuning.
2334     * configure, configure.in: Safer GMP3-detection.
2335     * INSTALL.generic: Clarified behaviour of --with-gmp.
2336     * autoconf/config.guess: updated from Clisp-2000-03-06 sources.
2337 kreckel 1.4
2338     2000-05-04 Richard Kreckel <kreckel@ginac.de>
2339    
2340 kreckel 1.150 * gmp/: removed completely. From now on we are going to link
2341     externally against libgmp3.0 or above!
2342     * configure, configure.in, Makefile.in, */Makeflags: removed support
2343     of internal gmp 2.0.2, like $GMP_INCLUDES, which should be done by
2344     setting $CPPFLAGS instead.
2345     * Makefile.in: Added libtool inter-library dependency for -lgmp and
2346     conforming interface versioning (-version-info).
2347     * autoconf/ltconfig, autoconf/ltmain.sh: Updated to newer versions
2348     from libtool 1.3.4.
2349 kreckel 1.4
2350 kreckel 1.3 2000-02-22 Bruno Haible <haible@clisp.cons.org>
2351    
2352 kreckel 1.150 * src/base/digitseq/cl_asm_mips_.cc: Starting at argument 5 the
2353     parameter passing was changed for the MIPS n32 ABI.
2354 kreckel 1.3
2355 kreckel 1.2 2000-01-24 Richard Kreckel <kreckel@ginac.de>
2356    
2357 kreckel 1.150 * gmp/*: Replaced the complete mpn sources with the ones from
2358     Debian since they are maintained while the ones from FSF
2359     aren't and there were problems on some architectures, PowerPC
2360     in particular. See the file gmp/README.CLN. This way the
2361     hard links in this directory have vanished, they were causing
2362     trouble for people working in AFS. This became necessary for
2363     Debian, because there it woudn't compile on PPC.
2364 kreckel 1.2
2365 kreckel 1.1 2000-01-13 Richard Kreckel <kreckel@ginac.de>
2366    
2367 kreckel 1.150 * Version 1.0.3 released.
2368 kreckel 1.1
2369     2000-01-13 Richard Kreckel <kreckel@ginac.de>
2370    
2371 kreckel 1.150 * src/base/cl_macros.h (nonreturning_function): For egcs and newer
2372     use __attribute__ ((__noreturn__)) instead of the __volatile__
2373     storage class.
2374     (nonreturning): Remove macro.
2375     * include/*: Minor fixes to stop -ansi -pedantic from complaining.
2376     * include/cl_integer.h: (doublefactorial): New declaration.
2377     * src/integer/misc/combin/cl_I_doublefactorial.cc: New file.
2378 kreckel 1.1
2379     1999-12-18 Bruno Haible <haible@clisp.cons.org>
2380    
2381 kreckel 1.150 * autoconf/acgeneral.m4 (AC_ARG_PROGRAM): Create conftestsed using
2382     "cat", not "echo".
2383     * autoconf/ltconfig: Improve support for recent FreeBSD 3.
2384     * include/cl_GV.h (cl_GV_vectorops): Change return type from 'T' to
2385     'const T', to match definition in src/vector/cl_GV_number.cc.
2386     Reported by Duncan Simpson <dps@io.stargate.co.uk>.
2387     * gmp/mpn/Makefile.in (.S.lo): Use 'if', not '&&', because '&&' may
2388     yield return code 1.
2389 kreckel 1.1
2390     1999-09-07 Bruno Haible <haible@clisp.cons.org>
2391    
2392 kreckel 1.150 * Version 1.0.2 released.
2393 kreckel 1.1
2394     1999-09-06 Bruno Haible <haible@clisp.cons.org>
2395    
2396 kreckel 1.150 * src/rational/cl_RA.h (integerp, ratiop): Instead of returning a
2397     boolean expression, write alternatives ending with either
2398     "return cl_true;" or "return cl_false;". This way, g++ does a
2399     better job inlining it.
2400     * src/float/cl_F.h (longfloatp): Likewise.
2401     * src/real/cl_R.h (rationalp, integerp, floatp): Likewise.
2402     * src/complex/cl_C.h (realp, complexp): Likewise.
2403 kreckel 1.1
2404     1999-09-05 Bruno Haible <haible@clisp.cons.org>
2405    
2406 kreckel 1.150 * include/cl_integer.h (cl_equal_hashcode): New declaration.
2407     * include/cl_rational.h (cl_equal_hashcode): New declaration.
2408     * include/cl_sfloat.h (cl_equal_hashcode): New declaration.
2409     * include/cl_ffloat.h (cl_equal_hashcode): New declaration.
2410     * include/cl_dfloat.h (cl_equal_hashcode): New declaration.
2411     * include/cl_lfloat.h (cl_equal_hashcode): New declaration.
2412     * include/cl_float.h (cl_equal_hashcode): New declaration.
2413     * include/cl_real.h (cl_equal_hashcode): New declaration.
2414     * include/cl_complex.h (cl_equal_hashcode): New declaration.
2415     * src/base/cl_N.h (equal_hashcode_low, equal_hashcode_one): New macros.
2416     * src/integer/misc/cl_I_eqhashcode.cc: New file.
2417     * src/rational/misc/cl_RA_eqhashcode.cc: New file.
2418     * src/float/sfloat/misc/cl_SF_eqhashcode.cc: New file.
2419     * src/float/ffloat/misc/cl_FF_eqhashcode.cc: New file.
2420     * src/float/dfloat/misc/cl_DF_eqhashcode.cc: New file.
2421     * src/float/lfloat/misc/cl_LF_eqhashcode.cc: New file.
2422     * src/float/misc/cl_F_eqhashcode.cc: New file.
2423     * src/real/misc/cl_R_eqhashcode.cc: New file.
2424     * src/complex/misc/cl_C_eqhashcode.cc: New file.
2425     * doc/cln.tex: Document `cl_equal_hashcode'.
2426 kreckel 1.1
2427     1999-09-05 Bruno Haible <haible@clisp.cons.org>
2428    
2429 kreckel 1.150 * include/cl_ring.h (cl_number_ring_ops): Add `contains' member.
2430     (cl_number_ring): New class.
2431     (cl_specialized_number_ring<T>): Inherit from cl_number_ring.
2432     (instanceof): New function.
2433     * src/integer/ring/cl_I_ring.cc (cl_I_p): New function.
2434     * src/integer/misc/cl_I_as.cc (cl_I_p): Add comment.
2435     * src/rational/ring/cl_RA_ring.cc (cl_RA_p): New function.
2436     * src/rational/misc/cl_RA_as.cc (cl_RA_p): Add comment.
2437     * src/real/ring/cl_R_ring.cc (cl_R_p): New function.
2438     * src/real/misc/cl_R_as.cc (cl_R_p): Add comment.
2439     * src/complex/ring/cl_C_ring.cc (cl_N_p): New function.
2440     * src/complex/misc/cl_N_as.cc (cl_N_p): Add comment.
2441     * doc/cln.tex: Document `instanceof'.
2442 kreckel 1.1
2443     1999-09-05 Bruno Haible <haible@clisp.cons.org>
2444    
2445 kreckel 1.150 * include/cl_rational.h (numerator, denominator): New declarations.
2446     * src/rational/elem/cl_RA_numerator.cc: New file.
2447     * src/rational/elem/cl_RA_denominator.cc: New file.
2448     * include/cl_integer.h (numerator, denominator): New inline functions.
2449     * doc/cln.tex: Document `numerator' and `denominator'.
2450 kreckel 1.1
2451     1999-09-05 Bruno Haible <haible@clisp.cons.org>
2452    
2453 kreckel 1.150 * src/rational/algebraic/cl_RA_rootp.cc (rootp): Fix endless loop
2454     in the integer case.
2455     * src/rational/algebraic/cl_RA_rootp_I.cc (rootp): Likewise.
2456 kreckel 1.1
2457     1999-09-05 Bruno Haible <haible@clisp.cons.org>
2458    
2459 kreckel 1.150 * include/cl_config.h.in: Support for sparc64 CPU.
2460     * include/cl_modules.h: Likewise.
2461     * include/cl_types.h: Likewise.
2462     * include/cl_object.h: Likewise.
2463     * include/cl_GV.h: Likewise.
2464     * src/Makefile.in: Likewise.
2465     * src/base/cl_alloca.h: Likewise.
2466     * src/base/cl_macros.h: Likewise.
2467     * src/base/cl_sysdep.h: Likewise.
2468     * src/base/cl_low.h: Likewise.
2469     * src/base/digitseq/cl_asm.h: Likewise.
2470     * src/base/digitseq/cl_asm_.cc: Likewise.
2471     * src/base/digitseq/cl_asm_sparc64.h: New file.
2472     * src/base/digitseq/cl_asm_sparc64_.cc: New file.
2473     * src/modinteger/cl_MI_int.h: Support for sparc64 CPU.
2474     * src/polynomial/elem/cl_UP_no_ring.cc: Likewise.
2475     * src/polynomial/elem/cl_UP_GF2.h: Likewise.
2476     * src/polynomial/elem/cl_asm_GF2.cc: Likewise.
2477 kreckel 1.1
2478     1999-09-04 Bruno Haible <haible@clisp.cons.org>
2479    
2480 kreckel 1.150 * src/base/digitseq/cl_asm_sparc_.cc (orc2_loop_up, orc2_loop_down):
2481     Use the `orn' instruction.
2482 kreckel 1.1
2483     1999-08-14 Bruno Haible <haible@clisp.cons.org>
2484    
2485 kreckel 1.150 Assume all platforms have <stdlib.h> and clock_t.
2486     * configure.in: Don't call CL_STDLIB_H and CL_CLOCK_T.
2487     * src/base/cl_base_config.h.in (CLOCK_T): Remove definition.
2488     * src/base/random/cl_random_from.cc: Use clock_t instead of CLOCK_T.
2489     * src/timing/cl_t_config.h.in (CLOCK_T): Remove definition.
2490     * src/timing/cl_t_current2.cc: Use clock_t instead of CLOCK_T.
2491 kreckel 1.1
2492     1999-07-18 Bruno Haible <haible@clisp.cons.org>
2493    
2494 kreckel 1.150 * gmp/config.guess: Link to autoconf/config.guess.
2495     gmp/config.sub: Link to autoconf/config.sub.
2496     Needed for Win32 platforms.
2497 kreckel 1.1
2498     1999-07-17 Bruno Haible <haible@clisp.cons.org>
2499    
2500 kreckel 1.150 * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Distinguish "sparc" and
2501     "sparc64" according to the C compiler, not the uname result.
2502 kreckel 1.1
2503     1999-06-17 Bruno Haible <haible@clisp.cons.org>
2504    
2505 kreckel 1.150 * src/base/digitseq/cl_asm_sparc_.cc (compare_loop_up): Fix
2506     COUNTER_LOOPS version, fortunately not used yet.
2507 kreckel 1.1
2508 kreckel 1.150 * include/cl_modules.h: Prepare for gcc version 3.
2509 kreckel 1.1
2510     1999-06-12 Bruno Haible <haible@clisp.cons.org>
2511    
2512 kreckel 1.150 * src/rational/elem/cl_RA_plus.cc, src/rational/elem/cl_RA_minus.cc:
2513     Change the last call from I_I_to_RT to I_I_to_RA.
2514 kreckel 1.1
2515     1999-06-09 Bruno Haible <haible@clisp.cons.org>
2516    
2517 kreckel 1.150 * Version 1.0.1 released.
2518 kreckel 1.1
2519     1999-06-09 Bruno Haible <haible@clisp.cons.org>
2520    
2521 kreckel 1.150 * src/integer/cl_I.h (pFN_maxlength_digits_at): Define also when
2522     intDsize==64.
2523 kreckel 1.1
2524     1999-06-08 Bruno Haible <haible@clisp.cons.org>
2525    
2526 kreckel 1.150 * autoconf/intparam.c (printf_underscored): Change argument type to
2527     `const char*'.
2528     * include/cl_modules.h (CL_OUTPUT_LABEL, CL_JUMP_TO): New macros.
2529     (CL_PROVIDE, CL_PROVIDE_END): Use them.
2530     * include/cl_string.h (cl_heap_string::operator new): Return 1, not 0.
2531     * include/cl_GV.h (cl_GV_inner<T>::operator new): Likewise.
2532     * src/base/ring/cl_no_ring.cc (dummy_canonhom, dummy_expt_pos): Don't
2533     cast a cl_I to void here. Works around a bug in g++-2.95.
2534     * src/complex/misc/cl_C_class.cc: Include "cl_C.h".
2535     * src/polynomial/elem/cl_UP_no_ring.cc (dummy_canonhom,
2536     dummy_expt_pos): Don't cast a cl_I to void here. Works around a bug
2537     in g++-2.95.
2538     * src/polynomial/elem/cl_asm_sparc_GF2.cc (DECLARE_FUNCTION): New
2539     macro.
2540     * src/rational/misc/cl_RA_class.cc: Include "cl_RA.h".
2541     * src/vector/cl_GV_I.cc (cl_heap_GV_I_general::operator new,
2542     DEFINE_cl_heap_GV_I_bits): Return 1, not 0.
2543     * src/vector/cl_GV_number.cc (cl_heap_GV_number_general::operator new):
2544     Likewise.
2545 kreckel 1.1
2546     1999-06-01 Bruno Haible <haible@clisp.cons.org>
2547    
2548 kreckel 1.150 * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Canonicalize alpha
2549     variants to alpha.
2550 kreckel 1.1
2551     1999-05-29 Bruno Haible <haible@clisp.cons.org>
2552    
2553 kreckel 1.150 * src/base/digitseq/cl_asm_i386_.cc (DECLARE_FUNCTION): Treat
2554     OpenBSD like NetBSD.
2555     * src/base/digitseq/cl_asm_sparc_.cc (DECLARE_FUNCTION): Likewise.
2556     * src/base/digitseq/cl_asm_m68k_.cc (DECLARE_FUNCTION): Treat
2557     OpenBSD like NetBSD, and Linux/ELF like SVR4.
2558 kreckel 1.1
2559     1999-05-16 Bruno Haible <haible@clisp.cons.org>
2560    
2561 kreckel 1.150 * src/base/cl_low.h (integerlength32) [__rs6000__]: Use old assembler
2562     syntax on AIX systems and new assembler syntax on non-AIX systems.
2563 kreckel 1.1
2564     1999-05-01 Bruno Haible <haible@clisp.cons.org>
2565    
2566 kreckel 1.150 * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
2567     version from GNU CVS.
2568 kreckel 1.1
2569     1999-04-24 Bruno Haible <haible@clisp.cons.org>
2570    
2571 kreckel 1.150 * src/integer/bitwise/cl_I_logand.cc (logand): Optimize the case when
2572     either operand is a positive fixnum, O(1) instead of O(N).
2573     * src/integer/bitwise/cl_I_lognand.cc (lognand): Likewise.
2574     * src/integer/bitwise/cl_I_logandc2.cc (logandc2): Likewise for the
2575     first operand.
2576 kreckel 1.1
2577     1999-04-14 Bruno Haible <haible@clisp.cons.org>
2578    
2579 kreckel 1.150 * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add check whether
2580     ctor/dtor needs to be exported.
2581     * include/cl_config.h.in (CL_NEED_GLOBALIZE_CTORDTOR): New macro.
2582     * include/cl_modules.h (CL_GLOBALIZE_JUMP_LABEL): Renamed from
2583     CL_GLOBALIZE_LABEL.
2584     (CL_GLOBALIZE_LABEL): New macro.
2585     (CL_GLOBALIZE_CTORDTOR_LABEL): Renamed from CL_GLOBALIZE_ASM_LABEL.
2586     (CL_PROVIDE): Update.
2587 kreckel 1.1
2588     1999-04-12 Bruno Haible <haible@clisp.cons.org>
2589    
2590 kreckel 1.150 * src/Makefile.in ($(ASMFILES_S)): On HPPA, ignore preprocessing
2591     errors ("unterminated string or character constant").
2592     ($(ASMFILES_LO)): On HPPA, try with various settings of
2593     COMPILER_PATH, in order to try /usr/ccs/bin/as and /bin/as.
2594 kreckel 1.1
2595     1999-04-11 Bruno Haible <haible@clisp.cons.org>
2596    
2597 kreckel 1.150 * INSTALL: Mention gmp problems on MIPS.
2598     * doc/cln.tex: Likewise.
2599 kreckel 1.1
2600     1999-03-24 Mumit Khan <khan@xraylith.wisc.edu>
2601    
2602 kreckel 1.150 * src/Makefile.in (SUBDIRS): Filter out CVS and RCS directories from
2603     the source tree.
2604     * include/cl_modules.h (CL_GLOBALIZE_LABEL): Define for Win32.
2605     (CL_GLOBALIZE_ASM_LABEL): New macro.
2606     (CL_PROVIDE): Use it.
2607     * src/base/random/cl_random_from.cc: Handle WIN32.
2608     * src/timing/cl_t_current.cc: Likewise.
2609 kreckel 1.1
2610     1999-03-15 Bruno Haible <haible@clisp.cons.org>
2611    
2612 kreckel 1.150 * autoconf/intparam.c (main7): Use %lX instead of %X for a `long'.
2613     (main8): Adapt for C++.
2614 kreckel 1.1
2615     1999-03-09 Bruno Haible <haible@clisp.cons.org>
2616    
2617 kreckel 1.150 * INSTALL: Mention egcs-1.1 problems on Sparc.
2618     * doc/cln.tex: Likewise.
2619 kreckel 1.1
2620     1999-03-08 Bruno Haible <haible@clisp.cons.org>
2621    
2622 kreckel 1.150 * autoconf/aclocal.m4 (CL_FPU_CONTROL): Fix the "checking for"
2623     messages.
2624 kreckel 1.1
2625     1999-02-25 Bruno Haible <haible@clisp.cons.org>
2626    
2627 kreckel 1.150 * autoconf/aclocal.m4: In test programs, declare `int main()', not
2628     `main()'.
2629 kreckel 1.1
2630 kreckel 1.150 * lidia-interface/src/interfaces/integers/cln/bigint.c
2631     (bigint_to_string): Fix for negative arguments.
2632 kreckel 1.1
2633 kreckel 1.150 * src/base/cl_low.h: Check for `__sparc__', not `SPARC'.
2634     * src/base/cl_alloca.h: Likewise.
2635 kreckel 1.1
2636 kreckel 1.150 * src/base/cl_low.h: Eliminate CLISP style "# " comments.
2637     * src/base/digitseq/cl_asm_arm_.cc,
2638     src/base/digitseq/cl_asm_mips_.cc,
2639     src/float/dfloat/elem/cl_DF_mul.cc: Likewise.
2640    
2641     * src/modinteger/cl_MI_pow2.h,
2642     src/modinteger/cl_MI_pow2m1.h,
2643     src/modinteger/cl_MI_pow2p1.h: Workaround g++-2.7.2 inlining bug.
2644 kreckel 1.1
2645     1999-01-18 Bruno Haible <haible@clisp.cons.org>
2646    
2647 kreckel 1.150 * autoconf/acgeneral.m4,
2648     autoconf/acspecific.m4: Upgrade to autoconf-2.13.
2649     * autoconf/config.guess, autoconf/config.sub: Likewise.
2650     * autoconf/aclocal.m4 (CL_ALLOCA): Test for _MSC_VER and alloca being
2651     a macro. Use ${ac_objext}.
2652     * src/base/cl_macros.h (alloca): Put _MSC_VER test before the others,
2653     conforming with CL_ALLOCA.
2654 kreckel 1.1
2655     1999-01-12 Bruno Haible <haible@clisp.cons.org>
2656    
2657 kreckel 1.150 * Version 1.0 released.
2658 kreckel 1.1

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