|
kusano |
7d535a |
============================================================================
|
|
kusano |
7d535a |
User visible changes for LZO -- a real-time data compression library
|
|
kusano |
7d535a |
============================================================================
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 2.03 (30 Apr 2008)
|
|
kusano |
7d535a |
* Updated the ELF assembler sources to mark the stack as non-executable.
|
|
kusano |
7d535a |
* Fixed a HP-UX 11 build issue with Itanium in ILP32 mode.
|
|
kusano |
7d535a |
* Updated the configure system.
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 2.02 (17 Oct 2005)
|
|
kusano |
7d535a |
* Updated the build and Autoconf scripts to fix some reported
|
|
kusano |
7d535a |
compilation problems.
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 2.01 (27 Jun 2005)
|
|
kusano |
7d535a |
* Changed the configure system to install the LZO library under the
|
|
kusano |
7d535a |
name "liblzo2" so that parallel installation with LZO v1 is possible.
|
|
kusano |
7d535a |
* Improved auto-configuration in miniLZO for some embedded targets like
|
|
kusano |
7d535a |
Blackfin and H8/300 processors.
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 2.00 (30 May 2005)
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
[Library interface changes]
|
|
kusano |
7d535a |
* The 'lzo_uint' typedef has been changed to match 'size_t', which means
|
|
kusano |
7d535a |
it now is 64 bits on most 64-bit architectures. 32-bit machines
|
|
kusano |
7d535a |
are not affected by this change.
|
|
kusano |
7d535a |
* The formula for maximum expansion of incompressible data has changed.
|
|
kusano |
7d535a |
See doc/LZO.FAQ. This is needed for some upcoming speed improvements,
|
|
kusano |
7d535a |
and also for compatibility with our commercial LZO Professional product.
|
|
kusano |
7d535a |
* The progress indicator callback interface has been revamped.
|
|
kusano |
7d535a |
* All public header files now get installed into a "lzo" subdirectory, so
|
|
kusano |
7d535a |
your applications should use #include <lzo lzoxxx.h="">.</lzo>
|
|
kusano |
7d535a |
* A number of (internal) macros have been renamed. See LZO_CFG_COMPAT
|
|
kusano |
7d535a |
in <lzo lzoconf.h=""> if your code depends on these.</lzo>
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
[Speed]
|
|
kusano |
7d535a |
* Small overall speedup by exploiting features like branch prediction
|
|
kusano |
7d535a |
hints and explicit inline control present in modern C/C++ compilers.
|
|
kusano |
7d535a |
* Significant speedup for 64-bit architectures like AMD64.
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
[Portability]
|
|
kusano |
7d535a |
* LZO now fully supports the LLP64 programming model.
|
|
kusano |
7d535a |
* LZO now fully supports the ILP64 and SILP64 programming models which
|
|
kusano |
7d535a |
are used on some supercomputing architectures.
|
|
kusano |
7d535a |
* Full Win64 support for AMD64 (aka x64) and IA64 (Itanium).
|
|
kusano |
7d535a |
* Full 16-bit support for ancient DOS 286 protected mode, OS/2 1.x
|
|
kusano |
7d535a |
and Windows 3.x.
|
|
kusano |
7d535a |
* The LZO library now compiles and works on completely freestanding or
|
|
kusano |
7d535a |
embedded systems as long as you have <limits.h> and <stddef.h> header</stddef.h></limits.h>
|
|
kusano |
7d535a |
files. See the B/generic/build_freestanding.sh build script.
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
[Misc]
|
|
kusano |
7d535a |
* The i386 assembler versions of the decompressors are now automatically
|
|
kusano |
7d535a |
built and installed. See also asm/i386/00README.TXT.
|
|
kusano |
7d535a |
* Added include file <lzo lzo_asm.h=""> that provides prototypes for all</lzo>
|
|
kusano |
7d535a |
assembler functions.
|
|
kusano |
7d535a |
* Under MacOS X, the configure script now will use the `-no-cpp-precomp'
|
|
kusano |
7d535a |
compiler option in order to work around bugs in some versions of
|
|
kusano |
7d535a |
Apple's native "smart" preprocessor.
|
|
kusano |
7d535a |
* Worked around a preprocessor bug that is present in all compilers which
|
|
kusano |
7d535a |
are based on the lcc compiler kit.
|
|
kusano |
7d535a |
* Added simple B/generic/build.sh build script family.
|
|
kusano |
7d535a |
* Added lots of new build scripts for various DOS/Windows compilers.
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
[Upgrade instructions from LZO v1 to LZO v2]
|
|
kusano |
7d535a |
* On 64-bit architectures, revisit all uses of lzo_uint.
|
|
kusano |
7d535a |
* Adapt for the maximum expansion change of incompressible data.
|
|
kusano |
7d535a |
* If you use the progress callback then adapt for the new interface.
|
|
kusano |
7d535a |
* Use #include <lzo lzoxxx.h=""> or adjust your include path.</lzo>
|
|
kusano |
7d535a |
* Check your code for use of deprecated macros. Add a
|
|
kusano |
7d535a |
#define LZO_CFG_COMPAT if necessary.
|
|
kusano |
7d535a |
* Other than that LZO v2 should be fully source-compatible with LZO v1.
|
|
kusano |
7d535a |
Of course, the compressed data is fully compatible as well.
|
|
kusano |
7d535a |
* Re-compile and re-link your application.
|
|
kusano |
7d535a |
* Enjoy the improvements!
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
----------------------------------------------------------------------------
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 1.08 (12 Jul 2002)
|
|
kusano |
7d535a |
* Much better support for cross compiling.
|
|
kusano |
7d535a |
* Straighten out ANSI-conforming compiler checks.
|
|
kusano |
7d535a |
* Avoid harmless compiler warnings reported by -Wcast-align.
|
|
kusano |
7d535a |
* Fixed some sign extension problems on rather exotic machines where
|
|
kusano |
7d535a |
sizeof(size_t) < sizeof(ptrdiff_t) and sizeof(lzo_uint) == sizeof(size_t)
|
|
kusano |
7d535a |
* Updated the configure system to use the latest Autoconf, Automake
|
|
kusano |
7d535a |
and Libtool versions.
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 1.07 (18 Oct 2000)
|
|
kusano |
7d535a |
* Default to `--disable-shared' (I'm getting tired of Libtool's
|
|
kusano |
7d535a |
shared library build problems, this time AIX was the culprit).
|
|
kusano |
7d535a |
* Avoid some harmless compiler warnings.
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 1.06 (29 Nov 1999)
|
|
kusano |
7d535a |
* Updated the configure system to use Autoconf 2.13, Automake 1.4 and
|
|
kusano |
7d535a |
Libtool 1.3.3. This should hopefully fix the shared-library build
|
|
kusano |
7d535a |
problems that were reported on some machines.
|
|
kusano |
7d535a |
* Enhanced example programs a little bit.
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 1.05 (14 Apr 1998)
|
|
kusano |
7d535a |
* Just a one-line change in the configure script to workaround
|
|
kusano |
7d535a |
a HPUX and IRIX build problem.
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 1.04 (15 Mar 1998)
|
|
kusano |
7d535a |
* Worked around a bug in the cpp preprocessor under HPUX 10.20.
|
|
kusano |
7d535a |
* Adapted for Automake 1.2f and Libtool 1.1.
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 1.03 (18 Jan 1998)
|
|
kusano |
7d535a |
* minor compression ratio improvement
|
|
kusano |
7d535a |
* extended example program to show how to do overlapping compression
|
|
kusano |
7d535a |
* assembler changes, added support for the nasm assembler
|
|
kusano |
7d535a |
* better support for cross compiling
|
|
kusano |
7d535a |
* some cleanups
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 1.02 (07 Dec 1997)
|
|
kusano |
7d535a |
* improved LZO1X-999 and LZO1Y-999 compression ratio a little bit again
|
|
kusano |
7d535a |
* introduced compression levels for LZO1X-999 and LZO1Y-999
|
|
kusano |
7d535a |
* added support for preset dictionaries
|
|
kusano |
7d535a |
* implemented LZO1X-1(12): needs 16 kB for compression
|
|
kusano |
7d535a |
* new algorithm LZO1Z: this is another variant of LZO1X
|
|
kusano |
7d535a |
* added example program: how to use preset dictionaries
|
|
kusano |
7d535a |
* added example program: how to do in-place decompression
|
|
kusano |
7d535a |
* added a little file-packer example program
|
|
kusano |
7d535a |
* LZO now works cleanly under checkergcc
|
|
kusano |
7d535a |
* strict 16-bit memory model is working (but not officially supported)
|
|
kusano |
7d535a |
* shared libraries are supported on many platforms
|
|
kusano |
7d535a |
* adapted for Automake 1.2d and Libtool 1.0h
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 1.01 (10 Aug 1997)
|
|
kusano |
7d535a |
* improved LZO1X-999 and LZO1Y-999 compression ratio a little bit
|
|
kusano |
7d535a |
* i386+gcc: significant speedup of the C version of the LZO1, LZO1A,
|
|
kusano |
7d535a |
LZO1B and LZO1C decompressors
|
|
kusano |
7d535a |
* added example programs that show how to generate pre-compressed data
|
|
kusano |
7d535a |
* added Makefiles for DOS, Windows and OS/2 targets
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 1.00 (13 Jul 1997)
|
|
kusano |
7d535a |
* added miniLZO - can be easily included in your project
|
|
kusano |
7d535a |
* improved documentation, added LZO.FAQ
|
|
kusano |
7d535a |
* added build scripts for many systems where Autoconf is not available:
|
|
kusano |
7d535a |
Windows 3.1 (LIB+DLL), Windows 95/NT (LIB+DLL), DOS (16+32 bit), OS/2
|
|
kusano |
7d535a |
* adapted for Automake 1.2 and Libtool 1.0
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 0.90 (27 Jun 1997): never released
|
|
kusano |
7d535a |
* LZO now uses GNU Automake 1.0 - lots of configuration changes
|
|
kusano |
7d535a |
* added LZO1X-1(11): this version needs only 8 kB for compression
|
|
kusano |
7d535a |
* implemented LZO1Y-1
|
|
kusano |
7d535a |
* added i386 assembler decompressors for MASM/TASM/WASM
|
|
kusano |
7d535a |
* the name of some assembler functions changed
|
|
kusano |
7d535a |
* the numeric value of some error codes changed
|
|
kusano |
7d535a |
* portability fixes
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 0.29 (04 May 1997)
|
|
kusano |
7d535a |
* Linux ELF shared library support
|
|
kusano |
7d535a |
* workaround for gcc 2.7.2 optimizer bug under AIX
|
|
kusano |
7d535a |
* added lzo_crc32() checksum
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 0.28 (22 Feb 1997)
|
|
kusano |
7d535a |
* new algorithm LZO1Y: LZO1Y-999 and LZO1Y decompressor
|
|
kusano |
7d535a |
* added lzo1x_optimize() and lzo1y_optimize()
|
|
kusano |
7d535a |
* minor speedup in assembler decompressors (i386+gcc)
|
|
kusano |
7d535a |
* ltest.c rewritten
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 0.27 (19 Jan 1997)
|
|
kusano |
7d535a |
* fixed a bug in LZO1B-999 and LZO1C-999 that could produce
|
|
kusano |
7d535a |
invalid compressed data in very rare cases
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 0.26 (18 Jan 1997): never released
|
|
kusano |
7d535a |
* implemented LZO1B-999
|
|
kusano |
7d535a |
* renamed LZO1D to LZO2A (also updated all docs)
|
|
kusano |
7d535a |
* some cleanups
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 0.25 (28 Dec 1996): never released
|
|
kusano |
7d535a |
* some portability fixes (LZO now works on my old Atari ST :-)
|
|
kusano |
7d535a |
* adapted for Autoconf 2.12
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 0.24 (30 Nov 1996): never released
|
|
kusano |
7d535a |
* improved performance of LZO1X assembler decompressor on a Pentium (i386+gcc)
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 0.23 (23 Nov 1996)
|
|
kusano |
7d535a |
* added LZO1C, LZO1F and LZO1X decompressors in assembler (i386+gcc)
|
|
kusano |
7d535a |
* added corresponding LZO_PUBLIC to all LZO_EXTERN functions
|
|
kusano |
7d535a |
* added support for Microsoft C 7.0 (16-bit DOS)
|
|
kusano |
7d535a |
* introduced lzo_uint32. This could prove useful for a strict 16-bit
|
|
kusano |
7d535a |
version that doesn't use `huge' pointers.
|
|
kusano |
7d535a |
* all algorithms use incremental hashing now
|
|
kusano |
7d535a |
* some cleanups and portability fixes
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 0.22 (19 Sep 1996)
|
|
kusano |
7d535a |
* LZO1X: minor decompressor speedup, added some checks in safe decompressor
|
|
kusano |
7d535a |
* Autoconf: added detection of gcc strength-reduction bug
|
|
kusano |
7d535a |
* Makefile changes
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 0.21 (08 Sep 1996)
|
|
kusano |
7d535a |
* LZO now uses GNU Autoconf 2.10 - lots of configuration changes
|
|
kusano |
7d535a |
* a few cosmetical changes
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 0.20 (11 Aug 1996)
|
|
kusano |
7d535a |
* new algorithm LZO1X: LZO1X-1, LZO1X-999 and LZO1X decompressor
|
|
kusano |
7d535a |
* significantly speeded up LZO1B, LZO1C and LZO1F decompressors
|
|
kusano |
7d535a |
on CPUs which allow unaligned memory access (e.g. Intel i386)
|
|
kusano |
7d535a |
* greatly speeded up LZO2A-999 compressor at the cost of some memory
|
|
kusano |
7d535a |
* some cleanups, portability fixes and minor speedups
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 0.16 (22 Jul 1996)
|
|
kusano |
7d535a |
* speeded up LZO1F decompressor a little bit
|
|
kusano |
7d535a |
* improved LZO1F-999 compression ratio
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 0.15 (10 Jul 1996)
|
|
kusano |
7d535a |
* new algorithm LZO1F: LZO1F-1, LZO1F-999 and LZO1F decompressor
|
|
kusano |
7d535a |
* improved LZO2A-999 compression ratio
|
|
kusano |
7d535a |
* removed LZO1E as it is dominated by LZO1F
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 0.14 (06 Jul 1996): never released
|
|
kusano |
7d535a |
* experimental algorithms: LZO1E and LZO1F
|
|
kusano |
7d535a |
* added LZO_EXTERN to all prototypes. Useful when building a DLL.
|
|
kusano |
7d535a |
* improved LZO1C-999 and LZO2A-999 compression ratio a little bit
|
|
kusano |
7d535a |
* fixed progress indicator callback (it was called only once)
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 0.13 (20 Jun 1996)
|
|
kusano |
7d535a |
* some speed improvements in LZO1C-999 and LZO2A-999
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 0.12 (18 Jun 1996): never released
|
|
kusano |
7d535a |
* added LZO1C-999, a slow but nearly optimal compressor
|
|
kusano |
7d535a |
intended for generating pre-compressed data
|
|
kusano |
7d535a |
* added tests for lookbehind-overrun in all safe decompressors
|
|
kusano |
7d535a |
* source tree completely rearranged, some filenames changed
|
|
kusano |
7d535a |
* extensions changed: a .ch file is a C source code that is included
|
|
kusano |
7d535a |
for reasons of code sharing
|
|
kusano |
7d535a |
* new algorithm LZO2A: LZO2A-999 and LZO2A decompressor. There is
|
|
kusano |
7d535a |
no fast compressor yet.
|
|
kusano |
7d535a |
* some cleanups
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 0.11 (29 May 1996)
|
|
kusano |
7d535a |
* source tree rearranged
|
|
kusano |
7d535a |
* LZO now compiles fine as a C++ library (interface still has C linkage)
|
|
kusano |
7d535a |
* improved overall compression ratio a little bit
|
|
kusano |
7d535a |
* LZO1B-99/LZO1C-99 now search for longer matches
|
|
kusano |
7d535a |
* incremental hash is working, it's a little bit faster
|
|
kusano |
7d535a |
* Makefile changed
|
|
kusano |
7d535a |
* added lzo_uint and lzo_sizeof in some places
|
|
kusano |
7d535a |
* split LZO1B compressor into even more include-files
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
Changes in 0.10 (20 May 1996): first public release of the LZO library
|
|
kusano |
7d535a |
* includes LZO1, LZO1A, LZO1B and LZO1C algorithms
|
|
kusano |
7d535a |
(compression levels 1-9 and 99)
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
14 Mar 1996:
|
|
kusano |
7d535a |
* public release of the LZO1A algorithm
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
04 Mar 1996:
|
|
kusano |
7d535a |
* public release of the LZO1 algorithm
|