Lines Matching defs:hashTable
25 U32* const hashTable = ms->hashTable;
45 U32 const matchIndex = hashTable[h];
51 hashTable[h] = idx; /* Update Hash Table */
164 const U32 * const dictHashTable = dms->hashTable;
238 U32* const hashTable = ms->hashTable;
241 U32 matchIndex = hashTable[h];
309 matchIndex = hashTable[h];
310 hashTable[h] = curr; /* Update Hash Table */
402 U32* const hashTable = ms->hashTable;
418 U32* const tmpHashTable = hashTable;
419 U32* const tmpChainTable = hashTable + ((size_t)1 << hashLog);
433 tmpChainTable[idx - tmpMinChain] = hashTable[h];
493 hashTable[bucketIdx + i] = 0;
495 hashTable[bucketIdx + bucketSize - 1] = chainPackedPointer;
505 hashTable[h + i] = hashTable[h + i - 1];
506 hashTable[h] = idx;
532 PREFETCH_L1(ddsBase + dms->hashTable[ddsIdx + ddsAttempt]);
536 U32 const chainPackedPointer = dms->hashTable[ddsIdx + bucketSize - 1];
545 matchIndex = dms->hashTable[ddsIdx + ddsAttempt];
573 U32 const chainPackedPointer = dms->hashTable[ddsIdx + bucketSize - 1];
622 U32* const hashTable = ms->hashTable;
632 NEXT_IN_CHAIN(idx, chainMask) = hashTable[h];
633 hashTable[h] = idx;
638 return hashTable[ZSTD_hashPtr(ip, hashLog, mls)];
682 const U32* entry = &dms->hashTable[ddsIdx];
729 matchIndex = dms->hashTable[ZSTD_hashPtr(ip, dms->cParams.hashLog, mls)];
841 * Performs prefetching for the hashTable and tagTable at a given row.
843 FORCE_INLINE_TEMPLATE void ZSTD_row_prefetch(U32 const* hashTable, U16 const* tagTable, U32 const relRow, U32 const rowLog) {
844 PREFETCH_L1(hashTable + relRow);
846 PREFETCH_L1(hashTable + relRow + 16);
854 assert(ZSTD_isAligned(hashTable + relRow, 64)); /* prefetched hash row always 64-byte aligned */
866 U32 const* const hashTable = ms->hashTable;
875 ZSTD_row_prefetch(hashTable, tagTable, row, rowLog);
886 * base + idx + ZSTD_ROW_HASH_CACHE_SIZE. Also prefetches the appropriate rows from hashTable and tagTable.
888 FORCE_INLINE_TEMPLATE U32 ZSTD_row_nextCachedHash(U32* cache, U32 const* hashTable,
895 ZSTD_row_prefetch(hashTable, tagTable, row, rowLog);
910 U32* const hashTable = ms->hashTable;
917 U32 const hash = useCache ? ZSTD_row_nextCachedHash(ms->hashCache, hashTable, tagTable, base, updateStartIdx, hashLog, rowLog, mls)
920 U32* const row = hashTable + relRow;
1000 * to match up with the actual layout of the entries within the hashTable */
1107 * - The hashTable is effectively split into groups or "rows" of 16 or 32 entries of U32, and the hash determines
1127 U32* const hashTable = ms->hashTable;
1163 PREFETCH_L1(&dms->hashTable[ddsIdx]);
1170 U32* const dmsHashTable = dms->hashTable;
1180 /* Update the hashTable and tagTable up to (but not including) ip */
1183 U32 const hash = ZSTD_row_nextCachedHash(hashCache, hashTable, tagTable, base, curr, hashLog, rowLog, mls);
1186 U32* const row = hashTable + relRow;