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:
+1
-1
@@ -14,7 +14,7 @@
|
|||||||
*.dylib
|
*.dylib
|
||||||
|
|
||||||
# Executables
|
# Executables
|
||||||
zstd.
|
/zstd
|
||||||
zstdmt
|
zstdmt
|
||||||
*.exe
|
*.exe
|
||||||
*.out
|
*.out
|
||||||
|
|||||||
@@ -257,19 +257,10 @@ _match_stored:
|
|||||||
/* Complementary insertion */
|
/* Complementary insertion */
|
||||||
/* done after iLimit test, as candidates could be > iend-8 */
|
/* done after iLimit test, as candidates could be > iend-8 */
|
||||||
{ U32 const indexToInsert = current+2;
|
{ U32 const indexToInsert = current+2;
|
||||||
hashLong[ZSTD_hashPtr(base+indexToInsert, hBitsL, 8)] =
|
hashLong[ZSTD_hashPtr(base+indexToInsert, hBitsL, 8)] = indexToInsert;
|
||||||
hashSmall[ZSTD_hashPtr(base+indexToInsert, hBitsS, mls)] =
|
hashLong[ZSTD_hashPtr(ip-2, hBitsL, 8)] = (U32)(ip-2-base);
|
||||||
indexToInsert;
|
hashSmall[ZSTD_hashPtr(base+indexToInsert, hBitsS, mls)] = indexToInsert;
|
||||||
}
|
hashSmall[ZSTD_hashPtr(ip-1, hBitsS, mls)] = (U32)(ip-1-base);
|
||||||
{ 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);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* check immediate repcode */
|
/* check immediate repcode */
|
||||||
|
|||||||
Reference in New Issue
Block a user