Greg Tucker
41fc273c43
igzip: Add missing files for distcheck
...
Change-Id: Ic6acd926c19113ecfa4233ca8d0a658e1a10ecd8
Signed-off-by: Greg Tucker <greg.b.tucker@intel.com>
2018-09-21 16:13:17 -07:00
Roy Oursler
9689ba7e13
igzip: Remove igzip copy of crc32_gzip
...
Change-Id: I859ed904effa0a8bd7462b77b13e359014912639
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2018-09-20 11:12:02 -07:00
Roy Oursler
52d974762b
igzip: Create precomputed static inflate_huff_code
...
Change-Id: I94a2de2b5e5bebc37e30f5d597a95c493da504c0
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2018-09-20 11:12:02 -07:00
Roy Oursler
8e4f1a1a38
igzip: Create generic deflate performance utility
...
Change-Id: Idf180660797f97a492550fb557652f036cd55509
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2018-09-20 11:12:02 -07:00
Roy Oursler
991fd252f1
igzip: Remove igzip_perf.c
...
Compression is too data dependent for igzip_perf.c to give any meaninful result.
Change-Id: I6d22cb5eb959404807b9c83de38e06d46c3ede76
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2018-09-20 11:12:02 -07:00
Roy Oursler
43374f6776
igzip: Implement gzip/zlib header/trailer parsing
...
Change-Id: I3fe8653f2286212a9d6c6ecfa3b78752b2cac8ef
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2018-09-20 11:12:02 -07:00
Greg Tucker
e8d15527fb
igzip: Remove igzip_sync_flush_file_perf
...
Performance test had limited functionality.
Change-Id: I5abc839fafc1351de7543531e7770b6add0bcb1d
Signed-off-by: Greg Tucker <greg.b.tucker@intel.com>
2018-06-21 14:39:08 -07:00
Greg Tucker
da1aee8714
igzip: Remove references to types.h
...
Previously included just for struct alignment but all restrictions
have been removed.
Change-Id: I3fa7cbab86fce419b3b3bfccb48d9129bd77cf64
Signed-off-by: Greg Tucker <greg.b.tucker@intel.com>
2018-06-21 14:39:08 -07:00
Roy Oursler
21e78d5aa3
igzip: improve igzip_body_compilations
...
Change-Id: I7ad859a986c643336be8824f6400b266ff140dcd
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2018-06-14 15:30:14 -07:00
Daniel Verkamp
6e9f576bff
igzip: remove detect_repeated_char()
...
This was replaced with detect_repeated_char_length(), but the
implementation of the old function was never removed.
Change-Id: I55485cec324dce01033b73f24474f1aca2a31bd3
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2018-03-29 09:33:04 -07:00
Roy Oursler
aedf4f8cff
igzip: create optimized set_long_icf_fg for avx2
...
Change-Id: I027e73eaa908ca69a5c1af5a52b464f1963fd2da
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2018-03-01 13:27:48 -07:00
Roy Oursler
9acc3ed2ac
igzip: Create AVX2 optimized version of level 3
...
Change-Id: Icfdb67445ee5afff85441cfee23beb66bfe15d5e
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2018-03-01 13:27:38 -07:00
Greg Tucker
22ec5c7469
igzip: Fix igzip fuzz test for lev2-3 buf size
...
Also remove unnecessary deps in igzip makefile.
Change-Id: I1ff79461df6d60bfc52c99b574c39098f1fe238a
Signed-off-by: Greg Tucker <greg.b.tucker@intel.com>
2017-12-19 11:01:46 -07:00
Roy Oursler
8965584ae3
igzip: Implement large hash table method as level 2
...
Move current level 2 compression to be level 3 and create a level 2
compression which is the same algorithm as level 1 but with a larger
hashtable.
Change-Id: I398a6017c2ff218dded24e229fb51c23ea69f314
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2017-12-15 14:27:14 -07:00
Roy Oursler
4ae2d1be29
igzip: Implement optimized level 2 compression
...
Change-Id: I8cf5bcd56f290d17205ac36dc2828c8acfc66947
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2017-12-15 14:27:14 -07:00
Greg Tucker
4f59eeda90
test: Add llvm fuzz testing
...
Moved the afl fuzz test and added llvm fuzz tests including inflate
and round trip compress and inflate. Currently only works with clang,
std makefile and libFuzzer installed. Need to add checking and
support later when libfuzzer is more tightly integrated into the
compiler.
Change-Id: I2db9ad2335d6c5ed846886703b58225f67bcc935
Signed-off-by: Greg Tucker <greg.b.tucker@intel.com>
2017-11-17 17:28:27 -07:00
Roy Oursler
aff6555226
igzip: Optimized deflate_hash
...
Optimize deflate hash by unrolling crc calculations.
Change-Id: Ief882910619a2cc3b052416d30499f6226e47419
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2017-08-18 14:42:37 -07:00
Roy Oursler
cf936f0d84
igzip: Remove igzip_sync_flush_perf
...
Remove igzip_sync_flush perf because the perf test does not give any new
information, and the data used does is not a representative work load.
Change-Id: I7b68f8b7c6da0944ace5a2a9e31db378135689ff
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2017-08-18 14:39:14 -07:00
Roy Oursler
ed15402f5b
igzip: Add stateful dictionary support
...
Change-Id: I75dbac947787bc0041674468c88d0aa41b8b082f
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2017-06-26 04:11:48 -04:00
Greg Tucker
a8966b6709
igzip: Add unit tests for adler and crc32_gzip
...
Also renamed test helper function, fixed clang warnings and adler usage.
Change-Id: I4ad22d046809483456608be1f4fdc4adbf0e09e4
Signed-off-by: Greg Tucker <greg.b.tucker@intel.com>
2017-06-26 04:03:35 -04:00
Greg Tucker
e1f5284ff8
igzip: Add sse optimized adler32 checksum
...
Change-Id: Id07727b8a8da4b41aa983b487ca881552d5190ee
Signed-off-by: Greg Tucker <greg.b.tucker@intel.com>
2017-06-26 04:01:29 -04:00
Greg Tucker
3025e83b91
igzip: Add avx2 optimized adler32 checksum
...
Change-Id: I019a38cf98836e3e6c7215a6914b85abb9399e33
Signed-off-by: Greg Tucker <greg.b.tucker@intel.com>
2017-06-26 03:56:49 -04:00
Roy Oursler
5a55e3096c
igzip: Avx512 version for encdode_df
...
Change-Id: I1625a3d7e016805791cfd09e31909562f432fd71
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2017-06-21 05:56:05 -04:00
Roy Oursler
4259169107
igzip: Implement zlib compression format
...
Change-Id: I3d3cca425a494ac629cea230de74e3d32fcaea79
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2017-06-21 05:41:05 -04:00
Hailiang Wang
52f644d3ff
igzip:use fgetpos() to replace ftell() to get file's length.
...
Change-Id: Ia1f3c06e92c01da9d22b3d70b2b05fe4808c9f2c
Signed-off-by: Hailiang Wang <hailiangx.e.wang@intel.com>
2017-06-21 05:22:07 -04:00
Hailiang Wang
ff9c0c1842
igzip:change the default max file size for 32-bit builds.
...
Change-Id: Ifab108250cfd06211843b5eccb1f1f0482669426
Signed-off-by: Hailiang Wang <hailiangx.e.wang@intel.com>
2017-06-21 05:13:24 -04:00
Greg Tucker
dbab2ddad7
igzip: Make crc32_gzip_base standalone c function
...
Change-Id: Iffb55919fb51e9e3d74c5c5cb06a3011bd19e99b
Signed-off-by: Greg Tucker <greg.b.tucker@intel.com>
2017-03-30 18:22:20 -07:00
Greg Tucker
ec6e5de665
igzip: Move build_heap base functions to own file
...
Change-Id: I0161cd65c71df00fadad9dd69e207e9fb29a54ef
Signed-off-by: Greg Tucker <greg.b.tucker@intel.com>
2017-03-30 18:20:09 -07:00
Greg Tucker
f316e96217
igzip: Add base function aliases and group src by arch
...
Change-Id: I4b6c8f62a09545d1ed4f48dc16b3fe8c8a5c72ea
Signed-off-by: Greg Tucker <greg.b.tucker@intel.com>
2017-03-30 18:16:36 -07:00
Greg Tucker
cd2146de95
igzip: Add missing file to dist list
...
Change-Id: I6dc920bbae9bd1800ba12e7174cdf6bc98f75489
Signed-off-by: Greg Tucker <greg.b.tucker@intel.com>
2017-03-30 17:15:14 -07:00
Roy Oursler
761b207376
igzip: delete generate_constant_block_header since it has not function
...
Change-Id: Id236f7a847f660b35165f9936850b3ff73609017
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2017-03-30 17:09:13 -07:00
Roy Oursler
01dfbcc484
igzip: implement igzip two pass
...
Change-Id: I9564b2da251a02197b39cab5f141e7aff1ae8439
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2017-03-30 16:50:48 -07:00
Greg Tucker
d301837657
igzip: Add file perf test for semi-dynamic
...
Change-Id: Ief045d7ca30d160128359b0dce3c63d9034c1016
Signed-off-by: Greg Tucker <greg.b.tucker@intel.com>
2016-12-06 16:20:33 -07:00
Roy Oursler
3bc0efa6c2
igzip: Add inflate std vector test to igzip_rand_test
...
Change-Id: If84de68e9f096e225b3b7e8b695f84c3ab6fe778
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2016-12-06 16:18:00 -07:00
Roy Oursler
886297517b
igzip: Delete igzip_check.c and set igzip_rand_test.c to a check test
...
Change-Id: Ie8127e2aa5f1dcc69501c9e86f83497ddf50b070
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2016-12-06 11:19:24 -07:00
Roy Oursler
77e43ef6cf
igzip: Set isal_deflate_stateless to use same assembly functions as isal_deflate
...
Change-Id: I813b620286c2f74fabff6937fbceddb65377f40c
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2016-12-06 11:07:08 -07:00
Roy Oursler
d941b66162
igzip: Improve igzip stateful on large buffers
...
Change-Id: I3e9e56958e8ea3e636df3369b29c3d4b94dce9d8
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2016-12-06 10:59:52 -07:00
Roy Oursler
0bac63c2e6
igzip: Add test for fuzz testing
...
Change-Id: I9b1bbdbb986f81094004caedde609c72042015c2
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2016-12-06 09:11:49 -07:00
Roy Oursler
88f95d8594
igzip: Merge inflate.h and igzip_lib.h and fix external naming
...
Merge inflate.h and igzip_lib.h and rename many defines to avoid conflicts,
along with general cleanup of the new header.
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
Reviewed-by: Greg Tucker <greg.b.tucker@intel.com>
2016-12-05 16:40:43 -07:00
Roy Oursler
869712d389
igzip: Rename inflate.asm and fix Makefile.am so that Makefile.unx works
...
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
Reviewed-by: Greg Tucker <greg.b.tucker@intel.com>
2016-12-05 16:12:53 -07:00
Roy Oursler
09a5a243bf
igzip: Implement statelesss inflate in assembly
...
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
Reviewed-by: Greg Tucker <greg.b.tucker@intel.com>
2016-12-05 12:45:53 -07:00
Roy Oursler
f97de75fc6
igzip: Port improvements to stateless compress to stateful compress
...
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
Reviewed-by: Greg Tucker <greg.b.tucker@intel.com>
2016-12-02 18:40:27 -07:00
Roy Oursler
cf30138c7b
igzip: Load memory into xmm in stateless registers
...
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
Reviewed-by: Greg Tucker <greg.b.tucker@intel.com>
2016-12-02 17:22:52 -07:00
Roy Oursler
31814483c0
igzip: Create assembly version of isal_update_histogram
...
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
Reviewed-by: Greg Tucker <greg.b.tucker@intel.com>
2016-12-02 17:16:55 -07:00
Xiaodong Liu
b34cb054fd
build: Fix an include path to be srcdir relative
...
Allows configure to again build in an external directory. When building ISAL in
an external path, assembler or compiler needs relative include paths.
Signed-off-by: Xiaodong Liu <xiaodong.liu@intel.com>
Reviewed-by: Greg Tucker <greg.b.tucker@intel.com>
2016-12-02 16:54:40 -07:00
Greg Tucker
660f49b02d
Add data compression unit
...
Include fast DEFLATE compatable compression functions.
Signed-off-by: Greg Tucker <greg.b.tucker@intel.com>
2016-06-10 17:03:38 -07:00