1996-05-20
==========

Functional changes
------------------

* New include file <cl_timing.h>, contains timing facilities.

Algorithmic changes
-------------------

* Speed up the multiplication of large numbers by use of an FFT based
  algorithm (Schnhage-Strassen). The improvement is noticeable when both
  factors have at least 1250 words = 40000 bits = 12000 decimal digits.

* Speed up the functions `cl_I gcd (const cl_I&, const cl_I&)' and
  `cl_I xgcd (const cl_I&, const cl_I&, cl_I*, cl_I*)' by a factor
  of 1.5. Simple trick.

* Speed up the function `cl_boolean sqrtp (const cl_I&, cl_I*)' using a
  trick from Henri Cohen.

* Fixed an endless loop in the function `uint32 gcd (uint32, uint32)'
  which occurred when one of the arguments is zero.

* Fixed an endless loop in the function `cl_I factorial (uintL)'.

Implementation changes
----------------------

* <cl_io.h> now uses iostreams by default instead of stdio FILE pointers.
  (Reported by Tito Flagella.)

* Fixed linking error when compiling without -O.
  (Reported by Tito Flagella.)

* Fixed syntax error in <cl_input.h>.
  (Reported by Tito Flagella.)

* Fixed syntax errors in src/cl_DS.h and src/cl_FF_plus.h.
  (Reported by Marcus Daniels.)

* More portability fixes.

* Configuration now supports the --srcdir option.
  (Reported by Marcus Daniels.)


1996-01-03
==========

* Compiles well on Sparc, using gcc.

* Mail to beta testers.


1995-12-06
==========

* Compiles well on Linux, using gcc.

