Function report |
Source Code:lib\lz4\lz4hc_compress.c |
Create Date:2022-07-28 07:00:50 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:LZ4HC_InsertAndFindBestMatch
Proto:static inline __attribute__((__always_inline__)) int LZ4HC_InsertAndFindBestMatch(LZ4HC_CCtx_internal *hc4, const BYTE *ip, const BYTE *const iLimit, const BYTE **matchpos, const int maxNbAttempts)
Type:int
Parameter:
Type | Parameter | Name |
---|---|---|
LZ4HC_CCtx_internal * | hc4 | Index table will be updated |
const BYTE * | ip | |
const BYTE *const | iLimit | |
const BYTE ** | matchpos | |
const int | maxNbAttempts |
106 | chainTable = chainTable |
111 | lowLimit = If low that point, no more dict + 64 * KB > ip - base Then low that point, no more dict Else ip - base - 64 * KB - 1 |
115 | nbAttempts = maxNbAttempts |
116 | ml = 0 |
120 | matchIndex = HashTable[LZ4HC_hashPtr(ip)] |
122 | When matchIndex >= lowLimit && nbAttempts cycle |
124 | nbAttempts-- |
125 | If matchIndex >= dictLimit Then |
126 | match = base + matchIndex |
128 | If *(match + ml) == *(ip + ml) && LZ4_read32(match) == LZ4_read32(ip) Then |
138 | Else |
139 | match = dictBase + matchIndex |
141 | If LZ4_read32(match) == LZ4_read32(ip) Then |
143 | vLimit = ip + dictLimit - matchIndex |
148 | mlt = LZ4_count(ip + -************************************* Constants, match + -************************************* Constants, vLimit) + -************************************* Constants |
150 | If ip + mlt == vLimit && vLimit < iLimit Then mlt += LZ4_count(ip + mlt, base + dictLimit, iLimit) |
158 | matchpos = base + matchIndex |
162 | matchIndex -= aster (matchIndex) |
165 | Return ml |
Name | Describe |
---|---|
LZ4HC_compress_generic |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |