Pablo de Lara
8045bee170
Bump minimum NASM version to 2.14.01
...
NASM version 2.14.01 supports all x86 ISA in this library.
Since this version has been out since 2018, it is safe to
only permit the library to be compiled with this minimum version,
as announced in issue #297 .
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
2025-05-08 16:20:08 +01:00
Roy Oursler
d3caab9c3a
build: Avoid requiring AVX512 define when using dispatch functions
...
Change-Id: I76af2d6ab7eb61ae531bbc7427650d08737c20ab
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2019-09-14 16:01:28 -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
03bef684a4
igzip: Setup for variable hash mask
...
Change-Id: I3be94dbc40c2e02dcff4f89e5a9df8ed1f744f02
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2018-09-18 14:27:25 -07:00
Roy Oursler
4b45beff4f
igzip: Avoid some nested multibinary calls in deflate_body
...
Change-Id: I2b433f63664ffa27fc125a6a859a1b8053212d7f
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2018-03-01 13:27:48 -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
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
7a12bcb2a8
igzip: Separate concept of level and compression method
...
Change-Id: I82a5fbeb93adc77057893c643e044e311e4f393c
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2017-12-15 14:27:14 -07:00
Roy Oursler
9203f96c2a
igzip: Change inputs to deflate_hash functions
...
Change-Id: I9ffff9aee82d5d1ece51853b4709f13ccd80c8ad
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
f78601adb9
igzip: Pick faster crc32 gzip function for sse4.2 machines
...
For machines with sse4.2 but not avx we can choose a faster version of
crc32_gzip. For highly compressible files using gzip format (rfc 1952) this can
be a significant advantage.
Change-Id: Ib699a68999290eed4b83f9bbf54dc6c304a5c445
Signed-off-by: Greg Tucker <greg.b.tucker@intel.com>
2017-09-20 10:50:16 -07:00
Xiaodong Liu
3ab8239097
multibinary: move WRT_OPT macro to common header
...
Signed-off-by: Xiaodong Liu <xiaodong.liu@intel.com>
2017-08-18 14:24:57 -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
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
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
Roy Oursler
d822c79d85
igzip: Modify multibinary so pcmulqdq does not cause error on Nehalem
...
Change-Id: Ibc68219afa240f5979954e895fd433b6a6da75ce
Signed-off-by: Roy Oursler <roy.j.oursler@intel.com>
2016-12-06 13:02:41 -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
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
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