Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:lib\zstd\compress.c Create Date:2022-07-28 07:03:33
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:ZSTD_compressBlock_fast_extDict_generic

Proto:static void ZSTD_compressBlock_fast_extDict_generic(ZSTD_CCtx *ctx, const void *src, size_t srcSize, const U32 mls)

Type:void

Parameter:

TypeParameterName
ZSTD_CCtx *ctx
const void *src
size_tsrcSize
const U32mls
1118  hashTable = hashTable
1119  hBits = hashLog
1120  seqStorePtr = &seqStore
1121  base = base
1122  dictBase = dictBase
1123  istart = src
1124  ip = istart
1125  anchor = istart
1126  lowestIndex = lowLimit
1127  dictStart = dictBase + lowestIndex
1128  dictLimit = dictLimit
1129  lowPrefixPtr = base + dictLimit
1130  dictEnd = dictBase + dictLimit
1131  iend = istart + srcSize
1132  ilimit = iend - 8
1133  offset_1 = rep[0] , offset_2 = rep[1]
1136  When ip < ilimit cycle
1137  h = ZSTD_hashPtr(ip, hBits, mls)
1138  matchIndex = hashTable[h]
1139  matchBase = If matchIndex < dictLimit Then dictBase Else base
1140  match = matchBase + matchIndex
1141  curr = ip - base
1142  repIndex = curr + 1 - offset_1
1143  repBase = If repIndex < dictLimit Then dictBase Else base
1144  repMatch = repBase + repIndex
1146  hashTable[h] = curr
1148  If dictLimit - 1 - repIndex >= 3 & repIndex > lowestIndex && ZSTD_read32(repMatch) == ZSTD_read32(ip + 1) Then
1150  repMatchEnd = If repIndex < dictLimit Then dictEnd Else iend
1152  ip++
1154  Else
1177  ip += mLength
1178  anchor = ip
1180  If ip <= ilimit Then
1182  hashTable[ZSTD_hashPtr(base + curr + 2, hBits, mls)] = curr + 2
1183  hashTable[ZSTD_hashPtr(ip - 2, hBits, mls)] = ip - 2 - base
1185  When ip <= ilimit cycle
1209  repToConfirm[0] = offset_1
1210  repToConfirm[1] = offset_2
1214  lastLLSize = iend - anchor
1215  No 3D Now!(lit, anchor, lastLLSize)
1216  lit += lastLLSize
Caller
NameDescribe
ZSTD_compressBlock_fast_extDict