/[cln]/ChangeLog
ViewVC logotype

Contents of /ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.194 - (hide annotations)
Tue Dec 18 23:01:19 2007 UTC (5 years, 5 months ago) by kreckel
Branch: MAIN
Changes since 1.193: +5 -0 lines
        * m4/general.m4 (CL_CANONICAL_HOST_CPU): Force host_cpu=rs6000 for
         powerpc64 if userland is 32 bit.

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

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