]> git.ipfire.org Git - thirdparty/zstd.git/commit
Lay Out Chain Table Chains Contiguously
authorW. Felix Handte <w@felixhandte.com>
Thu, 3 Sep 2020 16:55:40 +0000 (12:55 -0400)
committerW. Felix Handte <w@felixhandte.com>
Fri, 11 Sep 2020 02:10:02 +0000 (22:10 -0400)
commit9b9feb84f2d8378d5f89d4a9541f034718189c73
treeb39c1bc68d202d57b2774d496baa16bd46c09e4d
parent66509c7bf42dda5c76e2269f20392fd44cd0fd0f
Lay Out Chain Table Chains Contiguously

Rather than interleave all of the chain table entries, tying each entry's
position to the corresponding position in the input, this commit changes the
layout so that all the entries in a single chain are laid out next to each
other. The last entry in the hash table's bucket for this hash is now a packed
pointer of position + length of this chain.

This cannot be merged as written, since it allocates temporary memory inside
ZSTD_dedicatedDictSearch_lazy_loadDictionary().
lib/compress/zstd_lazy.c