]> www.ginac.de Git - cln.git/blob - ChangeLog
Add support for x86_64 CPU.
[cln.git] / ChangeLog
1 2002-08-03  Joerg Arndt  <jj@suse.de>
2
3         * include/cln/config.h.in: Add support for x86_64 CPU.
4         * include/cln/modules.h: Likewise.
5         * include/cln/types.h: Likewise.
6         * include/cln/object.h: Likewise.
7
8 2002-06-08  Richard Kreckel  <kreckel@ginac.de>
9
10         * src/base/digitseq/cl_asm.h: ensure intCsize==16 when including
11         m68k Assembler routines.
12         * src/base/digitseq/cl_asm_.cc: Likewise.
13
14 2002-05-28  Richard Kreckel  <kreckel@ginac.de>
15
16         * Version 1.1.5 released.
17
18 2002-05-27  Richard Kreckel  <kreckel@ginac.de>
19
20         * include/cln/modules.h (CL_CONCATENATE): New macro.
21
22 2002-05-10  Richard Kreckel  <kreckel@ginac.de>
23
24         * doc/cln.tex (Building the library): Update recommendations for 
25         compiling on Tru64 using g++ 3.0 and 3.1.
26         * README: Update homepage.
27
28 2002-05-05  Bruno Haible  <bruno@clisp.org>
29
30         * doc/cln.tex (Building the library): Give some recommendations for
31         g++ 3.0 and 3.1.
32
33         Force link-time references despite optimizations done by g++ 2.95
34         and newer.
35         * include/cln/modules.h (CL_FORCE_LINK): New macro.
36         * Use CL_FORCE_LINK.
37         * include/cln/GV_integer.h (cl_GV_I_debug_dummy): Likewise.
38         * include/cln/GV_number.h (cl_GV_number_debug_dummy): Likewise.
39         * include/cln/SV_number.h (cl_SV_number_debug_dummy): Likewise.
40         * include/cln/SV_ringelt.h (cl_SV_ringelt_debug_dummy): Likewise.
41         * include/cln/dfloat.h (cl_DF_debug_dummy): Likewise.
42         * include/cln/ffloat.h (cl_FF_classes_dummy, cl_FF_debug_dummy):
43         Likewise.
44         * include/cln/integer.h (cl_I_classes_dummy, cl_I_debug_dummy):
45         Likewise.
46         * include/cln/lfloat.h (cl_LF_debug_dummy): Likewise.
47         * include/cln/modinteger.h (cl_MI_debug_dummy): Likewise.
48         * include/cln/rational.h (cl_RA_debug_dummy): Likewise.
49         * include/cln/real.h (cl_R_debug_dummy): Likewise.
50         * include/cln/ring.h (cl_ring_debug_dummy): Likewise.
51         * include/cln/sfloat.h (cl_SF_classes_dummy, cl_SF_classes_dummy):
52         Likewise.
53         * include/cln/string.h (cl_string_debug_dummy): Likewise.
54         * include/cln/univpoly.h (cl_UP_debug_dummy): Likewise.
55         * src/float/base/cl_ieee.h (cl_ieee_dummy_NNN): Likewise.
56
57         Avoid g++ 3.1 warnings.
58         * src/base/cl_offsetof.h (offsetof): Redefine each time.
59         * src/base/digitseq/cl_DS.h: Include "cl_offsetof.h" after <gmp.h>.
60
61         Avoid g++ 3.1 warnings.
62         * src/base/hash/cl_hash.h (struct cl_heap_hashtable): Use typename
63         where needed.
64         * src/base/hash/cl_hash1.h (struct cl_heap_hashtable_1): typedef
65         htxentry as a shortcut.
66         * src/base/hash/cl_hash2.h (struct cl_heap_hashtable_2): Likewise.
67         * src/base/hash/cl_hashset.h (struct cl_heap_hashtable_set): Likewise.
68         * src/base/hash/cl_hashuniq.h (struct cl_heap_hashtable_uniq):
69         Likewise.
70
71 2002-03-15  Bruno Haible  <bruno@clisp.org>
72
73         * cln.tex: Document problem with GNU make 3.77.
74         Reported by Michael Somos <somos@grail.cba.csuohio.edu>.
75
76 2002-02-16  Richard Kreckel  <kreckel@ginac.de>
77
78         * cln.m4: quote macro name.
79           Pointed out by Roberto Bagnara.
80
81 2002-01-20  Richard Kreckel  <kreckel@ginac.de>
82
83         * autoconf/config.{guess,sub}: Update to GNU version 2002-01-02.
84           (the old one was broken on Linux/Mips.)
85
86 2002-01-04  Richard Kreckel  <kreckel@ginac.de>
87
88         * autoconf/autoconf.m4f: get brutal in order to adhere to FHS.
89         * Version 1.1.4 released.
90
91 2002-01-03  Richard Kreckel  <kreckel@ginac.de>
92
93         * autoconf/acinclude.m4: revamp MPN-matcher.
94         * autoconf/aclocal.m4: upgrade to autoconf-2.52 infrastructure,
95           sync with CLisp from CVS.
96         * autoconf/autoconf: Likewise.
97         * autoconf/autoconf.m4f: Likewise (new file).
98         * configure.ac: Likewise (new file, replaces configure.in).
99         * configure.in: Likewise (deleted, replaced by configure.ac).
100         * autoconf/config.{guess,sub}: Update to GNU version 2001-12-13.
101         * src/Makefile.in: made VPATH safe for autoconf-2.52.
102         * include/cln/config.h.in: Add __s390__.
103
104 2001-12-31  Richard Kreckel  <kreckel@ginac.de>
105
106         * src/base/digitseq/cl_DS.h: <gmp.h> is not included extern "C"
107           any more since GMP4 has some C++ support in it.
108
109 2001-12-14  Richard Kreckel  <kreckel@ginac.de>
110
111         * include/cln/modules.h, include/cln/object.h: add support for
112           s390.
113         * src/numtheory/cl_nt_sqrtmodp.cc: workaround for GCC2.x compiler-bug
114           on s390, provided by Gerhard Tonn.
115
116 2001-11-05  Richard Kreckel  <kreckel@ginac.de>
117
118         * autoconf/ltmain.sh: Upgrade to libtool-1.4.2.
119         * autoconf/config.{guess,sub}: Update to GNU version 2001-09-07.
120         * Version 1.1.3 released.
121
122 2001-11-04  Bruno Haible  <haible@clisp.cons.org>
123
124         Interoperability with gcc-3.0 -fuse-cxa-atexit.
125         * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add test whether
126           global destructors actually exist.
127         * include/cln/modules.h (CL_PROVIDE, CL_PROVIDE_END, CL_PROVIDE_END):
128           Don't hack the global destructors if there is no global destructors
129           function.
130
131 2001-11-03  Richard Kreckel  <kreckel@ginac.de>
132
133         * src/float/transcendental/cl_F_sinx.cc (sinx_naive): For small
134           values of x, return square(x) instead of x.
135         * src/float/transcendental/cl_F_sinhx.cc (sinhx_naive): Likewise.
136
137 2001-07-25  Richard Kreckel  <kreckel@ginac.de>
138
139         * Version 1.1.2 released.
140
141 2001-07-24  Richard Kreckel  <kreckel@ginac.de>
142
143         * src/base/hash/cl_hash.h: declare _cl_hashtable_iterator<htentry> a
144           friend of cl_heap_hashtable<htentry>.
145
146 2001-07-22  Richard Kreckel  <kreckel@ginac.de>
147
148         * src/float/base/cl_ieee.cc: try to do magic to the FPU only if
149           _FPU_IEEE is really defined.
150         * include/cln/modules.h: change assembler labels from `label' to
151           `label:' on hppa, needed by Linux (see comment).
152         * autoconf/acinclude.m4: new file (for storing CLN-specific macros).
153         * Makefile.devel: adjusted.
154         * autoconf/aclocal.m4: regenerate.
155         * src/base/low/cl_low_mul.cc: moved POD variables that are declared
156           extern "C" elsewhere out of the namespace.
157         * src/base/low/cl_low_div.cc: Likewise.
158
159 2001-06-08  Bruno Haible  <haible@clisp.cons.org>
160
161         * autoconf/config.{guess,sub}: Update to GNU version 2001-05-11.
162         * autoconf/aclocal.m4: Upgrade to libtool-1.4.
163         * autoconf/ltmain.sh: Likewise.
164         * autoconf/ltconfig: Remove file.
165         * autoconf/install-sh: New file.
166         * configure.in: Add AC_CONFIG_AUX_DIR call.
167
168 2001-06-05  Richard Kreckel  <kreckel@ginac.de>
169
170         * tests/tests.cc: resolve namespace ambiguity about strcmp().
171
172 2001-05-31  Richard Kreckel  <kreckel@ginac.de>
173
174         * Version 1.1.1 released.
175
176 2001-05-28  Richard Kreckel  <kreckel@ginac.de>
177
178         * cln/cln.tex: documented problems with shared library on Sparc
179           using gcc older than 2.95.3.
180         * configure.in: Fixed typos in versioning docu.
181
182 2001-05-25  Bruno Haible  <haible@clisp.cons.org>
183
184         * src/base/digitseq/cl_asm_arm_.cc: Use #0x instead of #& to designate
185           hexadecimal constants.
186
187 2001-05-25  Richard Kreckel  <kreckel@ginac.de>
188
189         * autoconf/floatparam.c (double_wordorder_bigendian_p): new symbol.
190         * src/float/dfloat/cl_DF.h: Check for double_wordorder_bigendian_p.
191         * Removed LiDIA interface since that is now outdated (namespace cln)
192           and maintained elsewhere.
193         * Adjusted dates and final touches for 1.1.1.
194
195 2001-05-19  Richard Kreckel  <kreckel@ginac.de>
196
197         * INSTALL: Update toolchain info: no egcs, some more platforms.
198         * doc/cln.tex: Likewise.
199
200 2001-05-18  Richard Kreckel  <kreckel@ginac.de>
201
202         * src/base/cl_low.h: prepended variables declared inside macros
203           with underscore.  Fixes equal_hashcode() on various platforms.
204
205 2001-04-25  Richard Kreckel  <kreckel@ginac.de>
206
207         * src/base/cl_low.h: Added several checks if NO_ASM is defined, so
208           this definition becomes actually useful.  This is needed for 
209           compilation on Arm until somebody fixes the assembler files for Arm.
210         * src/base/digitseq/cl_asm.h: Likewise.
211         * src/base/digitseq/cl_asm_.cc: Likewise.
212         * */Makefile.in: Added `override' in front of `CPPFLAGS +=' so
213            one can say `make CPPFLAGS=-DFOOBAR'.
214
215 2001-03-26  Arvid Norberg <c99ang@cs.umu.se>
216
217         * src/base/random/cl_random_from.cc: ported to beos.
218
219 2001-03-05  Richard Kreckel  <kreckel@ginac.de>
220
221         * include/cln/modules.h (CL_JUMP_TO): Fix IA64 brokenness.
222
223 2001-01-28  Richard Kreckel  <kreckel@ginac.de>
224
225         * include/cln/number.h (cl_as_N): Remove bogus comment.
226
227 2001-01-22  Richard Kreckel  <kreckel@ginac.de>
228
229         * configure.in: Make build in separate builddir possible (again).
230
231 2001-01-22  Richard Kreckel  <kreckel@ginac.de>
232
233         * include/cln/*.h: Change signatures of all classes' methods
234           cln::cl_foo::operator new(size_t, cl_foo*) to
235           cln::cl_foo::operator new(size_t, void*) so one can declare
236           std::vector<cln::cl_foo>, std::list<cln::cl_foo> etc. for
237           certain STL implementations (like libstdc++-v3).
238
239 2000-12-14  Richard Kreckel  <kreckel@ginac.de>
240
241         * Version 1.1 released.
242
243 2000-12-13  Richard Kreckel  <kreckel@ginac.de>
244
245         * */*: cl_istream -> std::istream, cl_ostream -> std::ostream.
246
247 2000-12-05  Richard Kreckel  <kreckel@ginac.de>
248
249         * Makefile.in, src/Makefile.in, doc/Makefile.in: Use mkdir -p.
250         * include/cln/version.h.in, src/base/verion.cc: New files.
251         * configure.in: Generate include/cln/version.h.
252         * cln.m4: Rewrote it. Check result of cln-config without compiling.
253           Do cross-check library version and header version information.
254
255 2000-12-02  Christian Bauer  <cbauer@ginac.de>
256
257         * Makefile.in, src/Makefile.in, doc/Makefile.in: Added $DESTDIR.
258         * cln.m4, cln.spec.in: some minor fixes with respect to RPM package
259           building.
260
261 2000-11-24  Richard Kreckel  <kreckel@ginac.de>
262
263         * */*: Removed problematic stdin, stdout and stderr definitions.  
264           Use std::cin, std::cout, std::cerr instead (obsoletes 2000-10-29).
265
266 2000-11-20  Bruno Haible
267
268         * cln-config.1: change title.
269
270 2000-11-18  Richard Kreckel  <kreckel@ginac.de>
271
272         * cln.m4: New file.
273         * doc/cln.tex: Document package tools cln-config and cln.m4.
274         * Makefile.in: Care about cln.m4.
275
276 2000-11-17  Richard Kreckel  <kreckel@ginac.de>
277
278         * cln-config.1: added manpage, as required by a couple of distros.
279         * Makefile.in, doc/Makefile.in: target install depends on installdirs.
280
281 2000-11-16  Richard Kreckel  <kreckel@ginac.de>
282
283         * autoconf/aclocal.m4 (CL_GMP_SET_UINTD): New macro...
284         * configure.in: ...used here.
285         * include/cln/config.h.in: Put in macros defined by CL_GMP_SET_UINTD...
286         * include/cln/types.h: ...used here.
287         * autoconf/acgeneral.m4, autoconf/aclocal.m4: Adhere to FHS.
288
289 2000-11-13  Richard Kreckel  <kreckel@ginac.de>
290
291         * src/base/digitseq/cl_asm.h: Test if (intDsize==32) for MIPS and HPPA,
292           in order to guard against an accidented configuration.
293         * src/integer/conv/cl_I_to_digits.cc (table): member b_hoch_k of 
294           struct power_table_entry initialized as ULL instead of as UL, if 
295           intDsize==64 (caused misprinting on MIPS w/ GMP).
296         * src/base/cl_macros.h (minus_bitm, bitc): implemented ULL, if 
297           HAVE_FAST_LONGLONG.
298         * src/integer/bitwise/cl_I_mkfx.cc (mkf_extract): Likewise.
299         * src/integer/conv/cl_I_from_L.cc (cl_I_from_L): Added trival 
300           generation of Bignum for intDsize==64 and a notreached-check at end.
301         * autoconf/config.guess, autoconf/config.sub: updated from FSF.
302         * include/cln/config.h.in: Prepared support for IA64.
303         * include/cln/types.h: Likewise.
304         * include/cln/object.h: Likewise.
305         * include/cln/modules.h: Likewise.
306         * src/base/cl_macros.h (nonreturning_function): Likewise (NUE's 
307           compiler claims __GNUC_MINOR__==9).
308
309 2000-11-03  Richard Kreckel  <kreckel@ginac.de>
310
311         * src/base/cl_macros.h (bit, minus_bit): changed criterion for ULL from
312           HAVE_DD to HAVE_FAST_LONGLONG.
313         * src/base/cl_macros.h (bitm): implemented ULL, if HAVE_FAST_LONGLONG.
314         * src/base/cl_low.h: actually no need to include "cln/types.h" here.
315         * src/base/cl_low.h (logcount_64): always ULL, independent of HAVE_DD.
316         * src/base/random/cl_UL_random.cc (random32): a is always ULL.
317
318 2000-11-01  Richard Kreckel  <kreckel@ginac.de>
319
320         * include/cln/object.h (cl_combine): define additional signatures, if
321           HAVE_LONGLONG is defined, in order to keep the compiler happy.
322         * src/base/cl_macros.h: include "cln/types.h", since we need HAVE_DD...
323         * src/base/cl_macros.h (bit): ...for this macro...
324         * src/base/cl_macros.h (minus_bit): ...and this one.
325         * src/base/cl_low.h: include "cln/types.h", since we need HAVE_DD...
326         * src/base/cl_low.h (logcount_64): ...for this macro.
327         * src/base/random/cl_UL_random.cc (random32): if HAVE_DD a is an ULL.
328         * src/integer/gcd/cl_I_gcd_aux2.cc (floorDD): fixed algorithmic bug.
329           that turned up when intDsize==32 and cl_word_size==64.
330         * src/float/dfloat/elem/cl_DF_div.cc (operator/): fixed a missing cast
331           to uint64 that turned up when intDsize==32 and cl_word_size==64.
332
333 2000-10-29  Richard Kreckel  <kreckel@ginac.de>
334
335         * src/real/input/cl_R_read.cc, src/complex/input/cl_N_read.cc:
336           #undef stderr, if it's defined so cln::stderr isn't confused.
337         * src/base/input/cl_read_globals.cc: stdin should not be extern.
338
339 2000-09-05  Richard Kreckel  <kreckel@ginac.de>
340
341         * include/cln/number.h (As): Fix it in namespace by suffixing `_As'
342           to the appropiate method instead of prefixing `as_'.
343         * src/complex/misc/cl_N_as.cc (cl_N_As): Likewise.
344         * src/real/misc/cl_R_as.cc (cl_R_As): Likewise.
345         * src/rational/misc/cl_RA_as.cc (cl_RA_As): Likewise.
346         * src/integer/misc/cl_I_as.cc (cl_I_As): Likewise.
347         * src/float/misc/cl_F_as.cc (cl_F_As): Likewise.
348         * src/float/sfloat/misc/cl_SF_as.cc (cl_SF_As): Likewise.
349         * src/float/lfloat/misc/cl_LF_as.cc (cl_LF_As): Likewise.
350         * src/float/ffloat/misc/cl_FF_as.cc (cl_FF_As): Likewise.
351         * src/float/dfloat/misc/cl_DF_as.cc (cl_DF_As): Likewise.
352
353 2000-09-05  Richard Kreckel  <kreckel@ginac.de>
354
355         * src/complex/transcendental/cl_C_expt_C.cc (expt): fix logic for
356           the 0^y cases.
357
358 2000-08-30  Richard Kreckel  <kreckel@ginac.de>
359
360         * include/cln/number.h, cl_number::_as_cl_private_thing(): removed.
361           Rearranged for a clearer distinction between macros and remaining
362           identifiers, so Cint can parse it smoothly.
363
364 2000-08-29  Richard Kreckel  <kreckel@ginac.de>
365
366         * include/cln/number.h, the(const cl_number& x): New template
367           function.
368
369 2000-08-29  Richard Kreckel  <kreckel@ginac.de>
370
371         * */*: Pushed CLN into a namespace `cln'.  While doing so, the
372           following identifiers got their poor-man's namespace (i.e. the 
373           prefix `cl_') stripped off:
374           cl_catalanconst()        ->  catalanconst()
375           cl_compare()             ->  compare()
376           cl_cos_sin()             ->  cos_sin()
377           cl_cos_sin_t             ->  cos_sin_t
378           cl_cosh_sinh()           ->  cosh_sinh()
379           cl_cosh_sinh_t           ->  cosh_sinh_t
380           cl_decoded_dfloat        ->  decoded_dfloat
381           cl_decoded_ffloat        ->  decoded_ffloat
382           cl_decoded_float         ->  decoded_float
383           cl_decoded_lfloat        ->  decoded_lfloat
384           cl_decoded_sfloat        ->  decoded_sfloat
385           cl_default_float_format  ->  default_float_format
386           cl_default_print_flags   ->  default_print_flags
387           cl_default_random_state  ->  default_random_state
388           cl_double_approx()       ->  double_approx()
389           cl_equal()               ->  equal()
390           cl_equal_hashcode()      ->  equal_hashcode()
391           cl_eulerconst()          ->  eulerconst()
392           cl_find_modint_ring()    ->  find_modint_ring()
393           cl_find_univpoly_ring()  ->  find_univ_poly_ring()
394           cl_float_approx()        ->  float_approx
395           cl_float_format()        ->  float_format()
396           cl_float_format_t        ->  float_format_t
397           cl_free_hook()           ->  free_hook()
398           cl_hermite()             ->  hermite()
399           cl_laguerre()            ->  laguerre()
400           cl_legendre()            ->  legandre()
401           cl_malloc_hook()         ->  malloc_hook()
402           cl_pi()                  ->  pi()
403           cl_tschebychev()         ->  tschebychev()
404           cl_zeta()                ->  zeta()
405           NB: For functions these changes includes all signatures.
406         * include/*: moved to include/cln/*, stripped `cl_' off filenames.
407         * cln-config.in: new file.
408
409 2000-08-26  Bruno Haible  <haible@clisp.cons.org>
410
411         * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
412           value, not parens.
413
414 2000-08-18  Bruno Haible  <haible@clisp.cons.org>
415
416         * include/cl_univpoly_modint.h: Fix typo.
417
418 2000-07-13  Bruno Haible  <haible@clisp.cons.org>
419
420         * src/float/input/cl_F_read_stream.cc (number_char_p): Accept '_',
421           used as precision marker for floats.
422           Reported by Keith Briggs (in 1998) and Thomas Roessler.
423         * src/integer/input/cl_I_read_stream.cc (number_char_p): Likewise.
424         * src/rational/input/cl_RA_read_stream.cc (number_char_p): Likewise.
425         * src/real/input/cl_R_read_stream.cc (number_char_p): Likewise.
426         * src/complex/input/cl_N_read_stream.cc (number_char_p): Likewise.
427
428 2000-06-22  Bruno Haible  <haible@clisp.cons.org>
429
430         * include/cl_object.h: Rename cl_word_size to cl_pointer_size.
431         * include/cl_types.h (HAVE_FAST_LONGLONG): Also define on Irix6
432           with N32 ABI.
433           (cl_word_size): New macro.
434         * src/float/sfloat/cl_SF.h: Use cl_pointer_size instead of
435           cl_word_size.
436
437 2000-05-31  Bruno Haible  <haible@clisp.cons.org>
438
439         * tests/exam_I_floor.cc (integer_floor_tests): Add one more entry.
440           From a sample that fails with gcc-2.95.2 on Sparc.
441         * tests/exam_I_gcd.cc (integer_gcd_tests): Likewise.
442
443 2000-05-30  Richard Kreckel  <kreckel@ginac.de>
444
445         * configure.in, autoconf/aclocal.m4 (CL_GMP_H_VERSION, CL_GMP_CHECK):
446           New macros.
447         * configure.in, include/cl_config.h.in (CL_VERSION, CL_VERSION_MINOR,
448           CL_VERSION_PATCHLEVEL): New definitions.
449         * autoconf/config.guess, autoconf/config.sub, autoconf/ltconfig,
450           autoconf/ltmain.sh: updated from FSF (libtool 1.3.5, etc).
451         * src/Makefile.in, configure.in: release-variables renamed from 
452           CLN_* to CL_*.
453         * configure.in: default to build both shared and static library
454           (i.e. default to the most common behaviour).
455
456 2000-05-29  Richard Kreckel  <kreckel@ginac.de>
457
458         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Added missing changequote
459           environment around the patch of 2000-05-23.
460
461 2000-05-29  Bruno Haible  <haible@clisp.cons.org>
462
463         * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
464           Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
465
466 2000-05-27  Richard Kreckel  <kreckel@ginac.de>
467
468         * src/float/lfloat/algebraic/cl_LF_sqrt.cc,
469           src/base/digitseq/cl_DS_sqrt.cc: Readjusted break-even points.
470
471 2000-05-24  Richard Kreckel  <kreckel@ginac.de>
472
473         * autoconf/config.*: Updated to new version from FSF
474           (the new libtool wants this).
475         * src/Makefile.in: added $(LDFLAGS) to link step.
476         * src/base/digitseq/cl_2DS_div.cc, cl_2DS_recip.cc: Readjusted 
477           break-even points.
478
479 2000-05-23  Bruno Haible  <haible@clisp.cons.org>
480
481         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
482           host_vendor, host_os correctly if $host has more than two hyphens.
483
484 2000-05-19  Richard Kreckel  <kreckel@ginac.de>
485
486         * src/base/digitseq/cl_DS_mul.cc: Rearranged break-even points to
487           better match present-day CPUs whenever GMP3 is used.
488         * src/base/digitseq/cl_DS_div.cc: dto. 
489         * src/TUNING: Added comment about order of tuning.
490         * configure, configure.in: Safer GMP3-detection.
491         * INSTALL.generic: Clarified behaviour of --with-gmp.
492         * autoconf/config.guess: updated from Clisp-2000-03-06 sources.
493
494 2000-05-04  Richard Kreckel  <kreckel@ginac.de>
495
496         * gmp/: removed completely.  From now on we are going to link
497           externally against libgmp3.0 or above!
498         * configure, configure.in, Makefile.in, */Makeflags: removed support
499           of internal gmp 2.0.2, like $GMP_INCLUDES, which should be done by
500           setting $CPPFLAGS instead.
501         * Makefile.in: Added libtool inter-library dependency for -lgmp and
502           conforming interface versioning (-version-info).
503         * autoconf/ltconfig, autoconf/ltmain.sh: Updated to newer versions
504           from libtool 1.3.4.
505
506 2000-02-22  Bruno Haible  <haible@clisp.cons.org>
507
508         * src/base/digitseq/cl_asm_mips_.cc: Starting at argument 5 the
509           parameter passing was changed for the MIPS n32 ABI.
510
511 2000-01-24  Richard Kreckel  <kreckel@ginac.de>
512
513         * gmp/*: Replaced the complete mpn sources with the ones from
514           Debian since they are maintained while the ones from FSF
515           aren't and there were problems on some architectures, PowerPC
516           in particular.  See the file gmp/README.CLN.  This way the
517           hard links in this directory have vanished, they were causing
518           trouble for people working in AFS.  This became necessary for
519           Debian, because there it woudn't compile on PPC.
520
521 2000-01-13  Richard Kreckel  <kreckel@ginac.de>
522
523         * Version 1.0.3 released.
524
525 2000-01-13  Richard Kreckel  <kreckel@ginac.de>
526
527         * src/base/cl_macros.h (nonreturning_function): For egcs and newer
528           use __attribute__ ((__noreturn__)) instead of the __volatile__
529           storage class.
530           (nonreturning): Remove macro.
531         * include/*: Minor fixes to stop -ansi -pedantic from complaining.
532         * include/cl_integer.h: (doublefactorial): New declaration.
533         * src/integer/misc/combin/cl_I_doublefactorial.cc: New file.
534
535 1999-12-18  Bruno Haible  <haible@clisp.cons.org>
536
537         * autoconf/acgeneral.m4 (AC_ARG_PROGRAM): Create conftestsed using
538           "cat", not "echo".
539         * autoconf/ltconfig: Improve support for recent FreeBSD 3.
540         * include/cl_GV.h (cl_GV_vectorops): Change return type from 'T' to
541           'const T', to match definition in src/vector/cl_GV_number.cc.
542           Reported by Duncan Simpson <dps@io.stargate.co.uk>.
543         * gmp/mpn/Makefile.in (.S.lo): Use 'if', not '&&', because '&&' may
544           yield return code 1.
545
546 1999-09-07  Bruno Haible  <haible@clisp.cons.org>
547
548         * Version 1.0.2 released.
549
550 1999-09-06  Bruno Haible  <haible@clisp.cons.org>
551
552         * src/rational/cl_RA.h (integerp, ratiop): Instead of returning a
553           boolean expression, write alternatives ending with either
554           "return cl_true;" or "return cl_false;". This way, g++ does a
555           better job inlining it.
556         * src/float/cl_F.h (longfloatp): Likewise.
557         * src/real/cl_R.h (rationalp, integerp, floatp): Likewise.
558         * src/complex/cl_C.h (realp, complexp): Likewise.
559
560 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
561
562         * include/cl_integer.h (cl_equal_hashcode): New declaration.
563         * include/cl_rational.h (cl_equal_hashcode): New declaration.
564         * include/cl_sfloat.h (cl_equal_hashcode): New declaration.
565         * include/cl_ffloat.h (cl_equal_hashcode): New declaration.
566         * include/cl_dfloat.h (cl_equal_hashcode): New declaration.
567         * include/cl_lfloat.h (cl_equal_hashcode): New declaration.
568         * include/cl_float.h (cl_equal_hashcode): New declaration.
569         * include/cl_real.h (cl_equal_hashcode): New declaration.
570         * include/cl_complex.h (cl_equal_hashcode): New declaration.
571         * src/base/cl_N.h (equal_hashcode_low, equal_hashcode_one): New macros.
572         * src/integer/misc/cl_I_eqhashcode.cc: New file.
573         * src/rational/misc/cl_RA_eqhashcode.cc: New file.
574         * src/float/sfloat/misc/cl_SF_eqhashcode.cc: New file.
575         * src/float/ffloat/misc/cl_FF_eqhashcode.cc: New file.
576         * src/float/dfloat/misc/cl_DF_eqhashcode.cc: New file.
577         * src/float/lfloat/misc/cl_LF_eqhashcode.cc: New file.
578         * src/float/misc/cl_F_eqhashcode.cc: New file.
579         * src/real/misc/cl_R_eqhashcode.cc: New file.
580         * src/complex/misc/cl_C_eqhashcode.cc: New file.
581         * doc/cln.tex: Document `cl_equal_hashcode'.
582
583 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
584
585         * include/cl_ring.h (cl_number_ring_ops): Add `contains' member.
586           (cl_number_ring): New class.
587           (cl_specialized_number_ring<T>): Inherit from cl_number_ring.
588           (instanceof): New function.
589         * src/integer/ring/cl_I_ring.cc (cl_I_p): New function.
590         * src/integer/misc/cl_I_as.cc (cl_I_p): Add comment.
591         * src/rational/ring/cl_RA_ring.cc (cl_RA_p): New function.
592         * src/rational/misc/cl_RA_as.cc (cl_RA_p): Add comment.
593         * src/real/ring/cl_R_ring.cc (cl_R_p): New function.
594         * src/real/misc/cl_R_as.cc (cl_R_p): Add comment.
595         * src/complex/ring/cl_C_ring.cc (cl_N_p): New function.
596         * src/complex/misc/cl_N_as.cc (cl_N_p): Add comment.
597         * doc/cln.tex: Document `instanceof'.
598
599 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
600
601         * include/cl_rational.h (numerator, denominator): New declarations.
602         * src/rational/elem/cl_RA_numerator.cc: New file.
603         * src/rational/elem/cl_RA_denominator.cc: New file.
604         * include/cl_integer.h (numerator, denominator): New inline functions.
605         * doc/cln.tex: Document `numerator' and `denominator'.
606
607 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
608
609         * src/rational/algebraic/cl_RA_rootp.cc (rootp): Fix endless loop
610           in the integer case.
611         * src/rational/algebraic/cl_RA_rootp_I.cc (rootp): Likewise.
612
613 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
614
615         * include/cl_config.h.in: Support for sparc64 CPU.
616         * include/cl_modules.h: Likewise.
617         * include/cl_types.h: Likewise.
618         * include/cl_object.h: Likewise.
619         * include/cl_GV.h: Likewise.
620         * src/Makefile.in: Likewise.
621         * src/base/cl_alloca.h: Likewise.
622         * src/base/cl_macros.h: Likewise.
623         * src/base/cl_sysdep.h: Likewise.
624         * src/base/cl_low.h: Likewise.
625         * src/base/digitseq/cl_asm.h: Likewise.
626         * src/base/digitseq/cl_asm_.cc: Likewise.
627         * src/base/digitseq/cl_asm_sparc64.h: New file.
628         * src/base/digitseq/cl_asm_sparc64_.cc: New file.
629         * src/modinteger/cl_MI_int.h: Support for sparc64 CPU.
630         * src/polynomial/elem/cl_UP_no_ring.cc: Likewise.
631         * src/polynomial/elem/cl_UP_GF2.h: Likewise.
632         * src/polynomial/elem/cl_asm_GF2.cc: Likewise.
633
634 1999-09-04  Bruno Haible  <haible@clisp.cons.org>
635
636         * src/base/digitseq/cl_asm_sparc_.cc (orc2_loop_up, orc2_loop_down):
637           Use the `orn' instruction.
638
639 1999-08-14  Bruno Haible  <haible@clisp.cons.org>
640
641         Assume all platforms have <stdlib.h> and clock_t.
642         * configure.in: Don't call CL_STDLIB_H and CL_CLOCK_T.
643         * src/base/cl_base_config.h.in (CLOCK_T): Remove definition.
644         * src/base/random/cl_random_from.cc: Use clock_t instead of CLOCK_T.
645         * src/timing/cl_t_config.h.in (CLOCK_T): Remove definition.
646         * src/timing/cl_t_current2.cc: Use clock_t instead of CLOCK_T.
647
648 1999-07-18  Bruno Haible  <haible@clisp.cons.org>
649
650         * gmp/config.guess: Link to autoconf/config.guess.
651           gmp/config.sub: Link to autoconf/config.sub.
652           Needed for Win32 platforms.
653
654 1999-07-17  Bruno Haible  <haible@clisp.cons.org>
655
656         * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Distinguish "sparc" and
657           "sparc64" according to the C compiler, not the uname result.
658
659 1999-06-17  Bruno Haible  <haible@clisp.cons.org>
660
661         * src/base/digitseq/cl_asm_sparc_.cc (compare_loop_up): Fix
662           COUNTER_LOOPS version, fortunately not used yet.
663
664         * include/cl_modules.h: Prepare for gcc version 3.
665
666 1999-06-12  Bruno Haible  <haible@clisp.cons.org>
667
668         * src/rational/elem/cl_RA_plus.cc, src/rational/elem/cl_RA_minus.cc:
669           Change the last call from I_I_to_RT to I_I_to_RA.
670
671 1999-06-09  Bruno Haible  <haible@clisp.cons.org>
672
673         * Version 1.0.1 released.
674
675 1999-06-09  Bruno Haible  <haible@clisp.cons.org>
676
677         * src/integer/cl_I.h (pFN_maxlength_digits_at): Define also when
678           intDsize==64.
679
680 1999-06-08  Bruno Haible  <haible@clisp.cons.org>
681
682         * autoconf/intparam.c (printf_underscored): Change argument type to
683           `const char*'.
684         * include/cl_modules.h (CL_OUTPUT_LABEL, CL_JUMP_TO): New macros.
685           (CL_PROVIDE, CL_PROVIDE_END): Use them.
686         * include/cl_string.h (cl_heap_string::operator new): Return 1, not 0.
687         * include/cl_GV.h (cl_GV_inner<T>::operator new): Likewise.
688         * src/base/ring/cl_no_ring.cc (dummy_canonhom, dummy_expt_pos): Don't
689           cast a cl_I to void here. Works around a bug in g++-2.95.
690         * src/complex/misc/cl_C_class.cc: Include "cl_C.h".
691         * src/polynomial/elem/cl_UP_no_ring.cc (dummy_canonhom,
692            dummy_expt_pos): Don't cast a cl_I to void here. Works around a bug
693           in g++-2.95.
694         * src/polynomial/elem/cl_asm_sparc_GF2.cc (DECLARE_FUNCTION): New
695           macro.
696         * src/rational/misc/cl_RA_class.cc: Include "cl_RA.h".
697         * src/vector/cl_GV_I.cc (cl_heap_GV_I_general::operator new,
698            DEFINE_cl_heap_GV_I_bits): Return 1, not 0.
699         * src/vector/cl_GV_number.cc (cl_heap_GV_number_general::operator new):
700           Likewise.
701
702 1999-06-01  Bruno Haible  <haible@clisp.cons.org>
703
704         * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Canonicalize alpha
705           variants to alpha.
706
707 1999-05-29  Bruno Haible  <haible@clisp.cons.org>
708
709         * src/base/digitseq/cl_asm_i386_.cc (DECLARE_FUNCTION): Treat
710           OpenBSD like NetBSD.
711         * src/base/digitseq/cl_asm_sparc_.cc (DECLARE_FUNCTION): Likewise.
712         * src/base/digitseq/cl_asm_m68k_.cc (DECLARE_FUNCTION): Treat
713           OpenBSD like NetBSD, and Linux/ELF like SVR4.
714
715 1999-05-16  Bruno Haible  <haible@clisp.cons.org>
716
717         * src/base/cl_low.h (integerlength32) [__rs6000__]: Use old assembler
718           syntax on AIX systems and new assembler syntax on non-AIX systems.
719
720 1999-05-01  Bruno Haible  <haible@clisp.cons.org>
721
722         * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
723           version from GNU CVS.
724
725 1999-04-24  Bruno Haible  <haible@clisp.cons.org>
726
727         * src/integer/bitwise/cl_I_logand.cc (logand): Optimize the case when
728           either operand is a positive fixnum, O(1) instead of O(N).
729         * src/integer/bitwise/cl_I_lognand.cc (lognand): Likewise.
730         * src/integer/bitwise/cl_I_logandc2.cc (logandc2): Likewise for the
731           first operand.
732
733 1999-04-14  Bruno Haible  <haible@clisp.cons.org>
734
735         * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add check whether
736           ctor/dtor needs to be exported.
737         * include/cl_config.h.in (CL_NEED_GLOBALIZE_CTORDTOR): New macro.
738         * include/cl_modules.h (CL_GLOBALIZE_JUMP_LABEL): Renamed from
739           CL_GLOBALIZE_LABEL.
740           (CL_GLOBALIZE_LABEL): New macro.
741           (CL_GLOBALIZE_CTORDTOR_LABEL): Renamed from CL_GLOBALIZE_ASM_LABEL.
742           (CL_PROVIDE): Update.
743
744 1999-04-12  Bruno Haible  <haible@clisp.cons.org>
745
746         * src/Makefile.in ($(ASMFILES_S)): On HPPA, ignore preprocessing
747           errors ("unterminated string or character constant").
748           ($(ASMFILES_LO)): On HPPA, try with various settings of
749           COMPILER_PATH, in order to try /usr/ccs/bin/as and /bin/as.
750
751 1999-04-11  Bruno Haible  <haible@clisp.cons.org>
752
753         * INSTALL: Mention gmp problems on MIPS.
754         * doc/cln.tex: Likewise.
755
756 1999-03-24  Mumit Khan  <khan@xraylith.wisc.edu>
757
758         * src/Makefile.in (SUBDIRS): Filter out CVS and RCS directories from
759           the source tree.
760         * include/cl_modules.h (CL_GLOBALIZE_LABEL): Define for Win32.
761           (CL_GLOBALIZE_ASM_LABEL): New macro.
762           (CL_PROVIDE): Use it.
763         * src/base/random/cl_random_from.cc: Handle WIN32.
764         * src/timing/cl_t_current.cc: Likewise.
765
766 1999-03-15  Bruno Haible  <haible@clisp.cons.org>
767
768         * autoconf/intparam.c (main7): Use %lX instead of %X for a `long'.
769           (main8): Adapt for C++.
770
771 1999-03-09  Bruno Haible  <haible@clisp.cons.org>
772
773         * INSTALL: Mention egcs-1.1 problems on Sparc.
774         * doc/cln.tex: Likewise.
775
776 1999-03-08  Bruno Haible  <haible@clisp.cons.org>
777
778         * autoconf/aclocal.m4 (CL_FPU_CONTROL): Fix the "checking for"
779           messages.
780
781 1999-02-25  Bruno Haible  <haible@clisp.cons.org>
782
783         * autoconf/aclocal.m4: In test programs, declare `int main()', not
784           `main()'.
785
786         * lidia-interface/src/interfaces/integers/cln/bigint.c
787           (bigint_to_string): Fix for negative arguments.
788
789         * src/base/cl_low.h: Check for `__sparc__', not `SPARC'.
790         * src/base/cl_alloca.h: Likewise.
791
792         * src/base/cl_low.h: Eliminate CLISP style "# " comments.
793         * src/base/digitseq/cl_asm_arm_.cc,
794           src/base/digitseq/cl_asm_mips_.cc,
795           src/float/dfloat/elem/cl_DF_mul.cc: Likewise.
796
797         * src/modinteger/cl_MI_pow2.h,
798           src/modinteger/cl_MI_pow2m1.h,
799           src/modinteger/cl_MI_pow2p1.h: Workaround g++-2.7.2 inlining bug.
800
801 1999-01-18  Bruno Haible  <haible@clisp.cons.org>
802
803         * autoconf/acgeneral.m4,
804           autoconf/acspecific.m4: Upgrade to autoconf-2.13.
805         * autoconf/config.guess, autoconf/config.sub: Likewise.
806         * autoconf/aclocal.m4 (CL_ALLOCA): Test for _MSC_VER and alloca being
807           a macro. Use ${ac_objext}.
808         * src/base/cl_macros.h (alloca): Put _MSC_VER test before the others,
809           conforming with CL_ALLOCA.
810
811 1999-01-12  Bruno Haible  <haible@clisp.cons.org>
812
813         * Version 1.0 released.
814