Lines Matching defs:head

823  * Returns the next index to insert at within a tagTable row, and updates the "head"
979 ZSTD_row_getSSEMask(int nbChunks, const BYTE* const src, const BYTE tag, const U32 head)
990 if (nbChunks == 1) return ZSTD_rotateRight_U16((U16)matches[0], head);
991 if (nbChunks == 2) return ZSTD_rotateRight_U32((U32)matches[1] << 16 | (U32)matches[0], head);
993 return ZSTD_rotateRight_U64((U64)matches[3] << 48 | (U64)matches[2] << 32 | (U64)matches[1] << 16 | (U64)matches[0], head);
999 * Each row is a circular buffer beginning at the value of "head". So we must rotate the "matches" bitfield
1002 ZSTD_row_getMatchMask(const BYTE* const tagRow, const BYTE tag, const U32 head, const U32 rowEntries)
1010 return ZSTD_row_getSSEMask(rowEntries / 16, src, tag, head);
1026 return ZSTD_rotateRight_U16((hi << 8) | lo, head);
1041 return ZSTD_rotateRight_U32(matches, head);
1056 return ZSTD_rotateRight_U64(matches, head);
1094 return ZSTD_rotateRight_U16((U16)matches, head);
1096 return ZSTD_rotateRight_U32((U32)matches, head);
1098 return ZSTD_rotateRight_U64((U64)matches, head);
1110 * be considered as a circular buffer with a "head" index that resides in the tagTable.
1112 * - Note: The tagTable has 17 or 33 1-byte entries per row, due to 16 or 32 tags, and 1 "head" entry.
1188 U32 const head = *tagRow & rowMask;
1192 ZSTD_VecMask matches = ZSTD_row_getMatchMask(tagRow, (BYTE)tag, head, rowEntries);
1196 U32 const matchPos = (head + ZSTD_VecMask_next(matches)) & rowMask;
1257 { U32 const head = *dmsTagRow & rowMask;
1261 ZSTD_VecMask matches = ZSTD_row_getMatchMask(dmsTagRow, (BYTE)dmsTag, head, rowEntries);
1264 U32 const matchPos = (head + ZSTD_VecMask_next(matches)) & rowMask;