Lines Matching defs:rowLog

843 FORCE_INLINE_TEMPLATE void ZSTD_row_prefetch(U32 const* hashTable, U16 const* tagTable, U32 const relRow, U32 const rowLog) {
845 if (rowLog >= 5) {
850 if (rowLog == 6) {
853 assert(rowLog == 4 || rowLog == 5 || rowLog == 6);
855 assert(ZSTD_isAligned(tagTable + relRow, (size_t)1 << rowLog)); /* prefetched tagRow sits on correct multiple of bytes (32,64,128) */
863 U32 const rowLog, U32 const mls,
874 U32 const row = (hash >> ZSTD_ROW_HASH_TAG_BITS) << rowLog;
875 ZSTD_row_prefetch(hashTable, tagTable, row, rowLog);
891 U32 const rowLog, U32 const mls)
894 U32 const row = (newHash >> ZSTD_ROW_HASH_TAG_BITS) << rowLog;
895 ZSTD_row_prefetch(hashTable, tagTable, row, rowLog);
907 U32 const mls, U32 const rowLog,
917 U32 const hash = useCache ? ZSTD_row_nextCachedHash(ms->hashCache, hashTable, tagTable, base, updateStartIdx, hashLog, rowLog, mls)
919 U32 const relRow = (hash >> ZSTD_ROW_HASH_TAG_BITS) << rowLog;
936 U32 const mls, U32 const rowLog,
954 ZSTD_row_update_internalImpl(ms, idx, bound, mls, rowLog, rowMask, useCache);
956 ZSTD_row_fillHashCache(ms, base, rowLog, mls, idx, ip+1);
960 ZSTD_row_update_internalImpl(ms, idx, target, mls, rowLog, rowMask, useCache);
969 const U32 rowLog = BOUNDED(4, ms->cParams.searchLog, 6);
970 const U32 rowMask = (1u << rowLog) - 1;
973 DEBUGLOG(5, "ZSTD_row_update(), rowLog=%u", rowLog);
974 ZSTD_row_update_internal(ms, ip, mls, rowLog, rowMask, 0 /* dont use cache */);
1125 const U32 rowLog)
1143 const U32 rowEntries = (1U << rowLog);
1145 const U32 cappedSearchLog = MIN(cParams->searchLog, rowLog); /* nb of searches is capped at nb entries per row */
1165 ddsExtraAttempts = cParams->searchLog > rowLog ? 1U << (cParams->searchLog - rowLog) : 0;
1173 U32 const dmsRelRow = (dmsHash >> ZSTD_ROW_HASH_TAG_BITS) << rowLog;
1177 ZSTD_row_prefetch(dmsHashTable, dmsTagTable, dmsRelRow, rowLog);
1181 ZSTD_row_update_internal(ms, ip, mls, rowLog, rowMask, 1 /* useCache */);
1183 U32 const hash = ZSTD_row_nextCachedHash(hashCache, hashTable, tagTable, base, curr, hashLog, rowLog, mls);
1184 U32 const relRow = (hash >> ZSTD_ROW_HASH_TAG_BITS) << rowLog;
1299 * Generate search functions templated on (dictMode, mls, rowLog).
1322 #define ZSTD_ROW_SEARCH_FN(dictMode, mls, rowLog) ZSTD_RowFindBestMatch_##dictMode##_##mls##_##rowLog
1346 #define GEN_ZSTD_ROW_SEARCH_FN(dictMode, mls, rowLog) \
1347 ZSTD_SEARCH_FN_ATTRS size_t ZSTD_ROW_SEARCH_FN(dictMode, mls, rowLog)( \
1353 assert(MAX(4, MIN(6, ms->cParams.searchLog)) == rowLog); \
1354 return ZSTD_RowFindBestMatch(ms, ip, iLimit, offsetPtr, mls, ZSTD_##dictMode, rowLog); \
1378 /* Generate row search fns for each combination of (dictMode, mls, rowLog) */
1393 #define GEN_ZSTD_CALL_ROW_SEARCH_FN(dictMode, mls, rowLog) \
1394 case rowLog: \
1395 return ZSTD_ROW_SEARCH_FN(dictMode, mls, rowLog)(ms, ip, iend, offsetPtr);
1404 switch (rowLog) { \
1427 * (searchMethod, dictMode, mls, rowLog). We use switch statements
1433 * statements should be optimized out. Only the mls & rowLog switches
1441 * @param rowLog The row log (if applicable), in the range [4, 6].
1454 U32 const rowLog,
1492 const U32 rowLog = BOUNDED(4, ms->cParams.searchLog, 6);
1526 ZSTD_row_fillHashCache(ms, base, rowLog,
1566 size_t const ml2 = ZSTD_searchMax(ms, ip, iend, &offsetFound, mls, rowLog, searchMethod, dictMode);
1605 size_t const ml2 = ZSTD_searchMax(ms, ip, iend, &offset2, mls, rowLog, searchMethod, dictMode);
1641 size_t const ml2 = ZSTD_searchMax(ms, ip, iend, &offset2, mls, rowLog, searchMethod, dictMode);
1883 const U32 rowLog = BOUNDED(4, ms->cParams.searchLog, 6);
1892 ZSTD_row_fillHashCache(ms, base, rowLog,
1926 size_t const ml2 = ZSTD_searchMax(ms, ip, iend, &offsetFound, mls, rowLog, searchMethod, ZSTD_extDict);
1961 size_t const ml2 = ZSTD_searchMax(ms, ip, iend, &offset2, mls, rowLog, searchMethod, ZSTD_extDict);
1993 size_t const ml2 = ZSTD_searchMax(ms, ip, iend, &offset2, mls, rowLog, searchMethod, ZSTD_extDict);