函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\bpf\verifier.c Create Date:2022-07-27 14:10:22
Last Modify:2022-05-19 20:02:10 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:This function is supposed to be used by the following 32-bit optimization* code only. It returns TRUE if the source or destination register operates* on 64-bit, otherwise return FALSE.

函数原型:static bool is_reg64(struct bpf_verifier_env *env, struct bpf_insn *insn, u32 regno, struct bpf_reg_state *reg, enum reg_arg_type t)

返回类型:bool

参数:

类型参数名称
struct bpf_verifier_env *env
struct bpf_insn *insn
u32regno
struct bpf_reg_state *reg
enum reg_arg_typet
1319  code等于 opcode
1320  class等于Instruction classes (code)
1321  op等于alu/jmp fields (code)
1322  如果class恒等于BPF_JMP
1326  如果op恒等于unction return 则返回:true
1328  如果op恒等于unction call
1339  如果t恒等于 register is used as source operand 则返回:true
1342  返回:false
1346  如果class恒等于alu mode in double word width class恒等于BPF_JMPclass恒等于BPF_ALUop恒等于lags for endianness conversion: signed immediate constant 恒等于64则返回:true
1351  如果class恒等于BPF_ALUclass恒等于jmp mode in word width 则返回:false
1354  如果class恒等于BPF_LDX
1355  如果t不等于 register is used as source operand 则返回:ld/ldx fields (code)恒等于double word (64-bit)
1358  返回:true
1361  如果class恒等于BPF_STX
1362  如果 Ordering of fields matters. See states_equal() 不等于g doesn't contain a valid pointer 则返回:true
1364  返回:ld/ldx fields (code)恒等于double word (64-bit)
1367  如果class恒等于BPF_LD
1368  mode等于BPF BPF_DW 0x18 64-bit (code)
1371  如果mode恒等于BPF_IMM则返回:true
1375  如果t不等于 register is used as source operand 则返回:false
1379  如果regno恒等于BPF_REG_6则返回:true
1383  返回:true
1386  如果class恒等于BPF_ST则返回:true
1391  返回:true
调用者
名称描述
insn_has_def32Return TRUE if INSN has defined any 32-bit value explicitly.
check_reg_arg
opt_subreg_zext_lo32_rnd_hi32