Function report |
Source Code:lib\zstd\decompress.c |
Create Date:2022-07-28 07:07:04 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:ZSTD_execSequence
Proto:size_t ZSTD_execSequence(BYTE *op, BYTE *const oend, seq_t sequence, const BYTE **litPtr, const BYTE *const litLimit, const BYTE *const base, const BYTE *const vBase, const BYTE *const dictEnd)
Type:size_t
Parameter:
Type | Parameter | Name |
---|---|---|
BYTE * | op | |
BYTE *const | oend | |
seq_t | sequence | |
const BYTE ** | litPtr | |
const BYTE *const | litLimit | |
const BYTE *const | base | |
const BYTE *const | vBase | |
const BYTE *const | dictEnd |
1011 | sequenceLength = litLength + matchLength |
1012 | oMatchEnd = op + sequenceLength |
1013 | oend_w = oend - ! ZSTD_wildcopy() :* custom version of memcpy(), can copy up to 7 bytes too many (8 bytes if length==0) |
1018 | If oMatchEnd > oend Then Return -***************************************** Error codes handling(dstSize_tooSmall) |
1020 | If iLitEnd > litLimit Then Return -***************************************** Error codes handling(corruption_detected) |
1022 | If oLitEnd > oend_w Then Return ZSTD_execSequenceLast7(op, oend, sequence, litPtr, litLimit, base, vBase, dictEnd) |
1027 | If litLength > 8 Then ZSTD_wildcopy(op + 8, ( * litPtr) + 8, litLength - 8) |
1036 | If offset > oLitEnd - vBase Then Return -***************************************** Error codes handling(corruption_detected) |
1039 | If match + matchLength <= dictEnd Then |
1041 | Return sequenceLength |
1048 | matchLength -= length1 |
1050 | If op > oend_w || matchLength < MINMATCH Then |
1054 | Return sequenceLength |
1061 | If offset < 8 Then |
1063 | static const U32 dec32table[] = {0, 1, 2, 1, 4, 4, 4, 4} |
1064 | static const int dec64table[] = {8, 8, 8, 7, 8, 9, 10, 11} |
1065 | sub2 = dec64table[offset] |
1070 | match += dec32table[offset] |
1073 | Else |
1076 | op += 8 |
1077 | match += 8 |
1087 | Else |
1088 | ZSTD_wildcopy(op, match, (ptrdiff_t)matchLength - 8) |
1090 | Return sequenceLength |
Name | Describe |
---|---|
ZSTD_decompressSequences |
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 |