/[cln]/ChangeLog
ViewVC logotype

Contents of /ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.206 - (hide annotations)
Wed Feb 6 08:11:34 2008 UTC (5 years, 3 months ago) by kreckel
Branch: MAIN
Changes since 1.205: +6 -0 lines
Fix crash in output of huge numbers.

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

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