函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:longest_match

函数原型:static uInt longest_match(deflate_state *s, IPos cur_match)

返回类型:uInt

参数:

类型参数名称
deflate_state *s
IPoscur_match
559  chain_length等于Length of the best match at previous step. Matches not greater than this* are discarded. This is used in the lazy match evaluation.
560  scan等于windowstart of string to insert
563  best_len等于prev_length
564  nice_match等于Stop searching when current match exceeds this
565  limit等于如果start of string to insert 大于Minimum amount of lookahead, except at the end of the input file.* See deflate.c for comments about the MIN_MATCH+1.(s)则start of string to insert Minimum amount of lookahead, except at the end of the input file.* See deflate.c for comments about the MIN_MATCH+1.(s)否则Local data
570  prev等于Actual size of window: 2*wSize, except when the user input buffer* is directly used as sliding window.
571  wmask等于w_size - 1
581  strend等于windowstart of string to insert MAX_MATCH
582  scan_end1等于scan[best_len - 1]
583  scan_end等于scan[best_len]
592  如果prev_length大于等于good_match
593  chain_length右移等于2位
598  如果nice_match大于umber of valid bytes ahead in window nice_match等于umber of valid bytes ahead in window
602  循环
604  match等于windowcur_match
644  如果match[best_len]不等于scan_endmatch[best_len - 1]不等于scan_end1match不等于scan或*match先自加不等于scan[1]则继续下一循环
655  scan加等于2, match自加
661  循环
662  当*scan先自加恒等于*match先自加且*scan先自加恒等于*match先自加且*scan先自加恒等于*match先自加且*scan先自加恒等于*match先自加且*scan先自加恒等于*match先自加且*scan先自加恒等于*match先自加且*scan先自加恒等于*match先自加且*scan先自加恒等于*match先自加且scan小于strend循环
670  len等于MAX_MATCHstrendscan
671  scan等于strendMAX_MATCH
675  如果len大于best_len
677  best_len等于len
678  如果len大于等于nice_match退出
682  scan_end1等于scan[best_len - 1]
683  scan_end等于scan[best_len]
686 cur_match等于prev[cur_match & wmask]大于limitchain_length先自减不等于0循环
689  如果best_len小于等于umber of valid bytes ahead in window 则返回:best_len
690  返回:umber of valid bytes ahead in window
调用者
名称描述
deflate_fast
deflate_slow