函数逻辑报告 |
Source Code:kernel\bpf\verifier.c |
Create Date:2022-07-27 14:15:44 |
| Last Modify:2022-05-19 20:02:10 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:Same as above, but for the case that dst_reg holds a constant and src_reg is* the variable reg.
函数原型:static void reg_set_min_max_inv(struct bpf_reg_state *true_reg, struct bpf_reg_state *false_reg, u64 val, u8 opcode, bool is_jmp32)
返回类型:void
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct bpf_reg_state * | true_reg | |
| struct bpf_reg_state * | false_reg | |
| u64 | val | |
| u8 | opcode | |
| bool | is_jmp32 |
| 5701 | 如果__is_pointer_value(TSC's on different sockets may be reset asynchronously.* This may cause the TSC ADJUST value on socket 0 to be NOT 0., false_reg)则返回 |
| 5731 | 退出 |
| 5746 | 当:opcode恒等于SGE is signed '>=', GE in x86 |
| 5747 | 当:opcode恒等于SGT is signed '>', GT in x86 |
| 5749 | false_smin等于如果opcode恒等于SGT is signed '>', GT in x86 则sval否则sval加1 |
| 5750 | true_smax等于如果opcode恒等于SGT is signed '>', GT in x86 则sval减1否则sval |
| 5752 | 如果is_jmp32且非Return true if VAL is compared with a s64 sign extended from s32, and they* are with the same signedness.则退出 |
| 5756 | 退出 |
| 5758 | 当:opcode恒等于LE is unsigned, '<=' |
| 5759 | 当:opcode恒等于LT is unsigned, '<' |
| 5761 | false_umax等于如果opcode恒等于LT is unsigned, '<' 则val否则val减1 |
| 5762 | true_umin等于如果opcode恒等于LT is unsigned, '<' 则val加1否则val |
| 5764 | 如果is_jmp32则 |
| 5770 | 退出 |
| 5772 | 当:opcode恒等于SLE is signed, '<=' |
| 5773 | 当:opcode恒等于SLT is signed, '<' |
| 5775 | false_smax等于如果opcode恒等于SLT is signed, '<' 则sval否则sval减1 |
| 5776 | true_smin等于如果opcode恒等于SLT is signed, '<' 则sval加1否则sval |
| 5778 | 如果is_jmp32且非Return true if VAL is compared with a s64 sign extended from s32, and they* are with the same signedness.则退出 |
| 5782 | 退出 |
| 5784 | 默认 |
| 5785 | 退出 |
| 5793 | 如果is_jmp32则 |
| 5795 | __reg_bound_offset32(true_reg) |
| 名称 | 描述 |
|---|---|
| check_cond_jmp_op |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |