Lines Matching refs:hashSet
90 static size_t ZSTD_DDictHashSet_getIndex(const ZSTD_DDictHashSet* hashSet, U32 dictID) { in ZSTD_DDictHashSet_getIndex() argument
93 return hash & (hashSet->ddictPtrTableSize - 1); in ZSTD_DDictHashSet_getIndex()
100 static size_t ZSTD_DDictHashSet_emplaceDDict(ZSTD_DDictHashSet* hashSet, const ZSTD_DDict* ddict) { in ZSTD_DDictHashSet_emplaceDDict() argument
102 size_t idx = ZSTD_DDictHashSet_getIndex(hashSet, dictID); in ZSTD_DDictHashSet_emplaceDDict()
103 const size_t idxRangeMask = hashSet->ddictPtrTableSize - 1; in ZSTD_DDictHashSet_emplaceDDict()
104 …RETURN_ERROR_IF(hashSet->ddictPtrCount == hashSet->ddictPtrTableSize, GENERIC, "Hash set is full!"… in ZSTD_DDictHashSet_emplaceDDict()
106 while (hashSet->ddictPtrTable[idx] != NULL) { in ZSTD_DDictHashSet_emplaceDDict()
108 if (ZSTD_getDictID_fromDDict(hashSet->ddictPtrTable[idx]) == dictID) { in ZSTD_DDictHashSet_emplaceDDict()
110 hashSet->ddictPtrTable[idx] = ddict; in ZSTD_DDictHashSet_emplaceDDict()
117 hashSet->ddictPtrTable[idx] = ddict; in ZSTD_DDictHashSet_emplaceDDict()
118 hashSet->ddictPtrCount++; in ZSTD_DDictHashSet_emplaceDDict()
126 static size_t ZSTD_DDictHashSet_expand(ZSTD_DDictHashSet* hashSet, ZSTD_customMem customMem) { in ZSTD_DDictHashSet_expand() argument
127 size_t newTableSize = hashSet->ddictPtrTableSize * DDICT_HASHSET_RESIZE_FACTOR; in ZSTD_DDictHashSet_expand()
129 const ZSTD_DDict** oldTable = hashSet->ddictPtrTable; in ZSTD_DDictHashSet_expand()
130 size_t oldTableSize = hashSet->ddictPtrTableSize; in ZSTD_DDictHashSet_expand()
135 hashSet->ddictPtrTable = newTable; in ZSTD_DDictHashSet_expand()
136 hashSet->ddictPtrTableSize = newTableSize; in ZSTD_DDictHashSet_expand()
137 hashSet->ddictPtrCount = 0; in ZSTD_DDictHashSet_expand()
140 FORWARD_IF_ERROR(ZSTD_DDictHashSet_emplaceDDict(hashSet, oldTable[i]), ""); in ZSTD_DDictHashSet_expand()
151 static const ZSTD_DDict* ZSTD_DDictHashSet_getDDict(ZSTD_DDictHashSet* hashSet, U32 dictID) { in ZSTD_DDictHashSet_getDDict() argument
152 size_t idx = ZSTD_DDictHashSet_getIndex(hashSet, dictID); in ZSTD_DDictHashSet_getDDict()
153 const size_t idxRangeMask = hashSet->ddictPtrTableSize - 1; in ZSTD_DDictHashSet_getDDict()
156 size_t currDictID = ZSTD_getDictID_fromDDict(hashSet->ddictPtrTable[idx]); in ZSTD_DDictHashSet_getDDict()
166 return hashSet->ddictPtrTable[idx]; in ZSTD_DDictHashSet_getDDict()
191 static void ZSTD_freeDDictHashSet(ZSTD_DDictHashSet* hashSet, ZSTD_customMem customMem) { in ZSTD_freeDDictHashSet() argument
193 if (hashSet && hashSet->ddictPtrTable) { in ZSTD_freeDDictHashSet()
194 ZSTD_customFree((void*)hashSet->ddictPtrTable, customMem); in ZSTD_freeDDictHashSet()
196 if (hashSet) { in ZSTD_freeDDictHashSet()
197 ZSTD_customFree(hashSet, customMem); in ZSTD_freeDDictHashSet()
204 static size_t ZSTD_DDictHashSet_addDDict(ZSTD_DDictHashSet* hashSet, const ZSTD_DDict* ddict, ZSTD_… in ZSTD_DDictHashSet_addDDict() argument
205 …Count: %zu Tablesize: %zu", ZSTD_getDictID_fromDDict(ddict), hashSet->ddictPtrCount, hashSet->ddic… in ZSTD_DDictHashSet_addDDict()
206 …if (hashSet->ddictPtrCount * DDICT_HASHSET_MAX_LOAD_FACTOR_COUNT_MULT / hashSet->ddictPtrTableSize… in ZSTD_DDictHashSet_addDDict()
207 FORWARD_IF_ERROR(ZSTD_DDictHashSet_expand(hashSet, customMem), ""); in ZSTD_DDictHashSet_addDDict()
209 FORWARD_IF_ERROR(ZSTD_DDictHashSet_emplaceDDict(hashSet, ddict), ""); in ZSTD_DDictHashSet_addDDict()