/[cln]/ChangeLog
ViewVC logotype

Contents of /ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.196 - (show annotations)
Fri Jan 11 16:50:15 2008 UTC (5 years, 4 months ago) by kreckel
Branch: MAIN
Changes since 1.195: +30 -0 lines
        Make some functions more memory efficient:
        * src/float/transcendental/cl_LF_tran.h (eval_rational_series): The
        evaluation of streamed rational series may profit from shift-counting Q,
        too. Introduce a template parameter to determine whether shift-counting
        is to be used or not.
        * src/float/transcendental/cl_LF_ratseries_pqb.cc: Introduce template
        parameter.
        * src/float/transcendental/cl_LF_ratseries_pqa.cc: Likewise.
        * src/float/transcendental/cl_LF_ratseries_pqab.cc: Likewise.
        * src/float/transcendental/cl_LF_ratseries_qa.cc: Likewise.
        * src/float/transcendental/cl_LF_ratseries_qab.cc: Likewise.
        * src/float/transcendental/cl_LF_ratseries_q.cc: Likewise, added
        overload for streamed expansion.
        * src/float/transcendental/cl_LF_ratseries_qb.cc: Likewise.
        * src/float/transcendental/cl_LF_ratseries_pq.cc: Introduce template
        parameter, added overload for streamed expansion using shift-counts.
        * src/float/transcendental/cl_LF_zeta3.cc: Adapt to above changes.
        * src/float/transcendental/cl_LF_pi.cc: Likewise.
        * src/float/transcendental/cl_LF_eulerconst.cc: Likewise.
        * src/float/transcendental/cl_LF_catalanconst.cc: Likewise.
        * src/float/transcendental/cl_LF_cossin_aux.cc: Likewise.
        * src/float/transcendental/cl_LF_coshsinh_aux.cc: Likewise.
        * src/float/transcendental/cl_LF_atanh_recip.cc: Use streamed series.
        * src/float/transcendental/cl_LF_atan_recip.cc: Likewise.
        * src/float/transcendental/cl_LF_exp1.cc: Likewise.
        * src/float/transcendental/cl_LF_exp_aux.cc: Likewise.
        * src/float/transcendental/cl_LF_ratseries.cc: Removed.

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

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