Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

Name:ZSTD_decodeSequence

Proto:static seq_t ZSTD_decodeSequence(seqState_t *seqState)

Type:seq_t

Parameter:

TypeParameterName
seqState_t *seqState
935  llCode = FSE_peekSymbol( & stateLL)
936  mlCode = FSE_peekSymbol( & stateML)
937  ofCode = FSE_peekSymbol( & stateOffb)
939  llBits = LL_bits[llCode]
940  mlBits = ML_bits[mlCode]
941  ofBits = ofCode
942  totalBits = llBits + mlBits + ofBits
944  static const U32 LL_base[36] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 20, 22, 24, 28, 32, 40, 48, 64, 0x80, 0x100, 0x200, 0x400, 0x800, 0x1000, 0x2000, 0x4000, 0x8000, 0x10000}
947  static const U32 ML_base[53] = {3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 37, 39, 41, 43, 47, 51, 59, 67, 83, 99, 0x83, 0x103, 0x203, 0x403, 0x803, 0x1003, 0x2003, 0x4003, 0x8003, 0x10003}
951  static const U32 OF_base[29] = {0, 1, 1, 5, 0xD, 0x1D, 0x3D, 0x7D, 0xFD, 0x1FD, 0x3FD, 0x7FD, 0xFFD, 0x1FFD, 0x3FFD, 0x7FFD, 0xFFFD, 0x1FFFD, 0x3FFFD, 0x7FFFD, 0xFFFFD, 0x1FFFFD, 0x3FFFFD, 0x7FFFFD, 0xFFFFFD, 0x1FFFFFD, 0x3FFFFFD, 0x7FFFFFD, 0xFFFFFFD}
958  If Not ofCode Then offset = 0
960  Else
966  If ofCode <= 1 Then
967  offset += llCode == 0
968  If offset Then
969  temp = If offset == 3 Then prevOffset[0] - 1 Else prevOffset[offset]
970  temp += Not temp
971  If offset != 1 Then prevOffset[2] = prevOffset[1]
973  prevOffset[1] = prevOffset[0]
974  prevOffset[0] = offset = temp
975  Else
976  offset = prevOffset[0]
978  Else
979  prevOffset[2] = prevOffset[1]
980  prevOffset[1] = prevOffset[0]
981  prevOffset[0] = offset
983  offset = offset
986  matchLength = ML_base[mlCode] + If mlCode > 31 Then ! BIT_readBitsFast() :* unsafe version; only works only if nbBits >= 1 Else 0
987  If -*************************************************************** Memory I/O && mlBits + llBits > 24 Then BIT_reloadDStream( & DStream)
990  litLength = LL_base[llCode] + If llCode > 15 Then ! BIT_readBitsFast() :* unsafe version; only works only if nbBits >= 1 Else 0
991  If -*************************************************************** Memory I/O || totalBits > 64 - 7 - LLFSELog + MLFSELog + OffFSELog Then BIT_reloadDStream( & DStream)
995  FSE_updateState( & stateLL, & DStream)
996  FSE_updateState( & stateML, & DStream)
997  If -*************************************************************** Memory I/O Then BIT_reloadDStream( & DStream)
999  FSE_updateState( & stateOffb, & DStream)
1001  match = NULL
1003  Return seq
Caller
NameDescribe
ZSTD_decompressSequences