1 | |
1 | |
2 | - include a workaround for a compiler bug on 64 bit windows |
2 | TODO: try unaligned copy again in decompressor |
|
|
3 | TODO: allow size-optimised binaries by avoiding unrolling |
|
|
4 | TODO: implement lzf_c_best in lzf. |
|
|
5 | TODO: fix lzf_c_best. |
|
|
6 | |
|
|
7 | 3.7 (unreleased) |
|
|
8 | - add lzf_c_best.c, a slower but better compressor. |
|
|
9 | - switch to a multiplicative hash (developed with Steinar Gunderson), |
|
|
10 | which is faster on modern cpus and compresses a bit better. The old |
|
|
11 | hash function which uses only shifts is still available. |
|
|
12 | - allow user configurable hash table slots, which makes it possible |
|
|
13 | to use e.g. 16 bit offsets for a smaller hashtable (if your data is |
|
|
14 | always < 64kb). |
|
|
15 | - use _WIN32, not WIN32, when testing for windows (fails with bcc), |
|
|
16 | patch by Tamas Tevesz. |
|
|
17 | - try to port to win64+gcc, which is non-posix but doesn't have _int64 |
|
|
18 | (reported by Maciej Adamczyk). |
|
|
19 | |
|
|
20 | 3.6 Mon Feb 7 17:37:31 CET 2011 |
|
|
21 | - fixed hash calculation in C♯ version (Tiago Freitas Leal). |
|
|
22 | - unroll copy for small sizes, use memcpy for larger sizes, |
|
|
23 | greatly speeding up decompression in most cases. |
|
|
24 | - finally disable rep movsb - it's a big loss on modern intel cpus, |
|
|
25 | and only a small win on amd cpus. |
|
|
26 | - improve C++ compatibility of the code. |
|
|
27 | - slightly improve compressor speed. |
|
|
28 | - halved memory requirements for compressor on 64 bit architectures, |
|
|
29 | which can improve the speed quite a bit on older cpus. |
|
|
30 | |
|
|
31 | 3.5 Fri May 1 02:28:42 CEST 2009 |
|
|
32 | - lzf_compress did sometimes write one octet past the given output |
|
|
33 | buffer (analyzed and nice testcase by Salvatore Sanfilippo). |
|
|
34 | |
|
|
35 | 3.4 Tue Sep 2 06:45:00 CEST 2008 |
|
|
36 | - the fix from 3.3 introduced a compression bug, which is fixed in |
|
|
37 | this release (which explains the mysterious prerelease...). Thanks |
|
|
38 | once more to Clément Calmels. |
|
|
39 | |
|
|
40 | 3.3 Mon Aug 25 03:17:42 CEST 2008 |
|
|
41 | - lzf_compress could access memory after the given input buffer |
|
|
42 | when outputting back references. reported with nice testcase |
|
|
43 | by Clément Calmels. |
|
|
44 | |
|
|
45 | 3.2 Fri May 9 18:52:23 CEST 2008 |
|
|
46 | - include a workaround for failing POSIX and real-world compliance |
3 | (microsoft claims to support POSIX, but is far from it). |
47 | on 64 bit windows (microsoft claims to support POSIX, but is far |
4 | (analysed nicely by John Lilley). |
48 | from it). (bug found and analysed nicely by John Lilley). |
5 | |
49 | |
6 | 3.1 Fri Nov 30 11:33:04 CET 2007 |
50 | 3.1 Fri Nov 30 11:33:04 CET 2007 |
7 | - IMPORTANT BUGFIX: a too long final literal run would corrupt data |
51 | - IMPORTANT BUGFIX: a too long final literal run would corrupt data |
8 | in the encoder (this was introduced in 3.0 only, earlier versions |
52 | in the encoder (this was introduced in 3.0 only, earlier versions |
9 | are safe). |
53 | are safe). |
… | |
… | |
52 | - default HLOG size is now 15 (cpu caches have increased). |
96 | - default HLOG size is now 15 (cpu caches have increased). |
53 | - documentation fixes. |
97 | - documentation fixes. |
54 | |
98 | |
55 | 1.51 Thu Apr 14 22:15:46 CEST 2005 |
99 | 1.51 Thu Apr 14 22:15:46 CEST 2005 |
56 | - incorporated C♯ implementation of both the en- and decoder, |
100 | - incorporated C♯ implementation of both the en- and decoder, |
57 | written by "Oren J. Maurice <oymaurice@hazorea.org.il>". |
101 | written by "Oren J. Maurice". |
58 | You can find it in the cs/ subdirectory. |
102 | You can find it in the cs/ subdirectory. |
59 | - make FRST, NEXT IDX overridable if lzf_c.c is directly included |
103 | - make FRST, NEXT IDX overridable if lzf_c.c is directly included |
60 | in the code. |
104 | in the code. |
61 | |
105 | |
62 | 1.5 Tue Mar 8 20:23:23 CET 2005 |
106 | 1.5 Tue Mar 8 20:23:23 CET 2005 |