函数逻辑报告 |
Source Code:lib\842\842_compress.c |
Create Date:2022-07-27 07:54:30 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:add_bits
函数原型:static int add_bits(struct sw842_param *p, u64 d, u8 n)
返回类型:int
参数:
类型 | 参数 | 名称 |
---|---|---|
struct sw842_param * | p | |
u64 | d | |
u8 | n |
181 | 如果bits大于64则返回:__split_add_bits(p, d, n, 32) |
188 | 如果DIV_ROUND_UP(bits, 8)大于olen则返回:负ENOSPC |
196 | 否则如果bits小于等于16则put_unaligned(cpu_to_be16(o << 8 | d), (__be16 * )out) |
198 | 否则如果bits小于等于24则put_unaligned(cpu_to_be32(o << 24 | d << 8), (__be32 * )out) |
200 | 否则如果bits小于等于32则put_unaligned(cpu_to_be32(o << 24 | d), (__be32 * )out) |
202 | 否则如果bits小于等于40则put_unaligned(cpu_to_be64(o << 56 | d << 24), (__be64 * )out) |
204 | 否则如果bits小于等于48则put_unaligned(cpu_to_be64(o << 56 | d << 16), (__be64 * )out) |
206 | 否则如果bits小于等于56则put_unaligned(cpu_to_be64(o << 56 | d << 8), (__be64 * )out) |
208 | 否则put_unaligned(cpu_to_be64(o << 56 | d), (__be64 * )out) |
213 | 如果bit大于7则 |
219 | 返回:0 |
名称 | 描述 |
---|---|
__split_add_bits | |
add_template | |
add_repeat_template | |
add_short_data_template | |
add_zeros_template | |
add_end_template | |
sw842_compress | sw842_compress* Compress the uncompressed buffer of length @ilen at @in to the output buffer*@out, using no more than @olen bytes, using the 842 compression format |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |