函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:lib\zstd\fse_compress.c Create Date:2022-07-27 07:59:28
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:FSE_writeNCount_generic

函数原型:static size_t FSE_writeNCount_generic(void *header, size_t headerBufferSize, const short *normalizedCounter, unsigned maxSymbolValue, unsigned tableLog, unsigned writeIsSafe)

返回类型:size_t

参数:

类型参数名称
void *header
size_theaderBufferSize
const short *normalizedCounter
unsignedmaxSymbolValue
unsignedtableLog
unsignedwriteIsSafe
206  ostart等于header
207  out等于ostart
208  oend等于ostartheaderBufferSize
210  tableSize等于1左移tableLog
215  charnum等于0
216  previous0等于0
218  bitStream等于0
219  bitCount等于0
221  bitStream加等于tableLogFSE_MIN_TABLELOG左移bitCount
222  bitCount加等于4
225  remaining等于tableSize加1
226  threshold等于tableSize
227  nbBits等于tableLog加1
229 remaining大于1循环
230  如果previous0
231  start等于charnum
233  charnum自加
234 charnum大于等于start加24循环
235  start加等于24
236  bitStream加等于0xFFFFU左移bitCount
239  out[0]等于bitStream
240  out[1]等于bitStream右移8位
241  out加等于2
242  bitStream右移等于16位
244 charnum大于等于start加3循环
245  start加等于3
246  bitStream加等于3左移bitCount
247  bitCount加等于2
249  bitStream加等于charnumstart左移bitCount
250  bitCount加等于2
251  如果bitCount大于16则
254  out[0]等于bitStream
255  out[1]等于bitStream右移8位
256  out加等于2
257  bitStream右移等于16位
258  bitCount减等于16
263  max等于2乘threshold减1减remaining
264  remaining减等于如果count小于0则负count否则count
265  count自加
266  如果count大于等于thresholdcount加等于max
268  bitStream加等于count左移bitCount
269  bitCount加等于nbBits
270  bitCount减等于count小于max
271  previous0等于count恒等于1
274 remaining小于threshold循环
275  nbBits自减, threshold右移等于1位
277  如果bitCount大于16则
280  out[0]等于bitStream
281  out[1]等于bitStream右移8位
282  out加等于2
283  bitStream右移等于16位
284  bitCount减等于16
289  如果非writeIsSafeout大于oend减2则返回:-***************************************** Error codes handling(dstSize_tooSmall)
291  out[0]等于bitStream
292  out[1]等于bitStream右移8位
293  out加等于bitCount加7的和除8
295  如果charnum大于maxSymbolValue加1则返回:-***************************************** Error codes handling(GENERIC)
298  返回:outostart
调用者
名称描述
FSE_writeNCount