mirror of
https://github.com/facebook/zstd
synced 2026-08-22 22:32:07 -04:00
double-fast: changed the trade-off for a smaller positive change
same number of complementary insertions, just organized differently (long at `ip-2`, short at `ip-1`).
This commit is contained in:
parent
d1327738c2
commit
e8a7f5d3ce
2 changed files with 5 additions and 14 deletions
2
.gitignore
vendored
2
.gitignore
vendored
|
|
@ -14,7 +14,7 @@
|
|||
*.dylib
|
||||
|
||||
# Executables
|
||||
zstd.
|
||||
/zstd
|
||||
zstdmt
|
||||
*.exe
|
||||
*.out
|
||||
|
|
|
|||
|
|
@ -257,19 +257,10 @@ _match_stored:
|
|||
/* Complementary insertion */
|
||||
/* done after iLimit test, as candidates could be > iend-8 */
|
||||
{ U32 const indexToInsert = current+2;
|
||||
hashLong[ZSTD_hashPtr(base+indexToInsert, hBitsL, 8)] =
|
||||
hashSmall[ZSTD_hashPtr(base+indexToInsert, hBitsS, mls)] =
|
||||
indexToInsert;
|
||||
}
|
||||
{ const BYTE* const ipToInsert = ip - 2;
|
||||
hashLong[ZSTD_hashPtr(ipToInsert, hBitsL, 8)] =
|
||||
hashSmall[ZSTD_hashPtr(ipToInsert, hBitsS, mls)] =
|
||||
(U32)(ipToInsert-base);
|
||||
}
|
||||
{ const BYTE* const ipToInsert = ip - 1;
|
||||
hashLong[ZSTD_hashPtr(ipToInsert, hBitsL, 8)] =
|
||||
hashSmall[ZSTD_hashPtr(ipToInsert, hBitsS, mls)] =
|
||||
(U32)(ipToInsert-base);
|
||||
hashLong[ZSTD_hashPtr(base+indexToInsert, hBitsL, 8)] = indexToInsert;
|
||||
hashLong[ZSTD_hashPtr(ip-2, hBitsL, 8)] = (U32)(ip-2-base);
|
||||
hashSmall[ZSTD_hashPtr(base+indexToInsert, hBitsS, mls)] = indexToInsert;
|
||||
hashSmall[ZSTD_hashPtr(ip-1, hBitsS, mls)] = (U32)(ip-1-base);
|
||||
}
|
||||
|
||||
/* check immediate repcode */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue