Lines Matching refs:var_off
453 tnum_is_const(reg->var_off)) { in print_verifier_state()
455 verbose(env, "%lld", reg->var_off.value + reg->off); in print_verifier_state()
470 if (tnum_is_const(reg->var_off)) { in print_verifier_state()
475 verbose(env, ",imm=%llx", reg->var_off.value); in print_verifier_state()
491 if (!tnum_is_unknown(reg->var_off)) { in print_verifier_state()
494 tnum_strn(tn_buf, sizeof(tn_buf), reg->var_off); in print_verifier_state()
523 if (t == SCALAR_VALUE && tnum_is_const(reg->var_off)) in print_verifier_state()
524 verbose(env, "%lld", reg->var_off.value + reg->off); in print_verifier_state()
864 offsetof(struct bpf_reg_state, var_off) - sizeof(reg->type)); in __mark_reg_known()
865 reg->var_off = tnum_const(imm); in __mark_reg_known()
921 tnum_equals_const(reg->var_off, 0); in reg_is_init_pkt_pointer()
929 reg->var_off.value | (reg->var_off.mask & S64_MIN)); in __update_reg_bounds()
932 reg->var_off.value | (reg->var_off.mask & S64_MAX)); in __update_reg_bounds()
933 reg->umin_value = max(reg->umin_value, reg->var_off.value); in __update_reg_bounds()
935 reg->var_off.value | reg->var_off.mask); in __update_reg_bounds()
976 reg->var_off = tnum_intersect(reg->var_off, in __reg_bound_offset()
997 memset(reg, 0, offsetof(struct bpf_reg_state, var_off)); in __mark_reg_unknown()
999 reg->var_off = tnum_unknown; in __mark_reg_unknown()
1209 parent->var_off.value, parent->off); in mark_reg_read()
1861 return reg->type == SCALAR_VALUE && tnum_equals_const(reg->var_off, 0); in register_is_null()
1866 return reg->type == SCALAR_VALUE && tnum_is_const(reg->var_off); in register_is_const()
2111 if (!tnum_is_const(reg->var_off)) { in check_stack_access()
2114 tnum_strn(tn_buf, sizeof(tn_buf), reg->var_off); in check_stack_access()
2488 reg_off = tnum_add(reg->var_off, tnum_const(ip_align + reg->off + off)); in check_pkt_ptr_alignment()
2492 tnum_strn(tn_buf, sizeof(tn_buf), reg->var_off); in check_pkt_ptr_alignment()
2513 reg_off = tnum_add(reg->var_off, tnum_const(reg->off + off)); in check_generic_ptr_alignment()
2517 tnum_strn(tn_buf, sizeof(tn_buf), reg->var_off); in check_generic_ptr_alignment()
2682 if (!tnum_is_const(reg->var_off) || reg->var_off.value) { in check_ctx_reg()
2685 tnum_strn(tn_buf, sizeof(tn_buf), reg->var_off); in check_ctx_reg()
2703 if (!tnum_is_const(reg->var_off) || reg->var_off.value) { in check_tp_buffer_access()
2706 tnum_strn(tn_buf, sizeof(tn_buf), reg->var_off); in check_tp_buffer_access()
2727 reg->var_off = tnum_cast(reg->var_off, size); in coerce_reg_to_size()
2819 off += reg->var_off.value; in check_mem_access()
2941 if (tnum_is_const(reg->var_off)) { in __check_stack_boundary()
2947 tnum_strn(tn_buf, sizeof(tn_buf), reg->var_off); in __check_stack_boundary()
2982 if (tnum_is_const(reg->var_off)) { in check_stack_boundary()
2983 min_off = max_off = reg->var_off.value + reg->off; in check_stack_boundary()
2997 tnum_strn(tn_buf, sizeof(tn_buf), reg->var_off); in check_stack_boundary()
3065 if (tnum_is_const(reg->var_off)) { in check_stack_boundary()
3071 tnum_strn(tn_buf, sizeof(tn_buf), reg->var_off); in check_stack_boundary()
3135 bool is_const = tnum_is_const(reg->var_off); in process_spin_lock()
3137 u64 val = reg->var_off.value; in process_spin_lock()
3385 if (!tnum_is_const(reg->var_off)) in check_func_arg()
4167 bool known = tnum_is_const(reg->var_off); in check_reg_sane_offset()
4168 s64 val = reg->var_off.value; in check_reg_sane_offset()
4215 off = ptr_reg->off + ptr_reg->var_off.value; in retrieve_ptr_limit()
4333 bool known = tnum_is_const(off_reg->var_off); in adjust_ptr_min_max_vals()
4416 dst_reg->var_off = ptr_reg->var_off; in adjust_ptr_min_max_vals()
4446 dst_reg->var_off = tnum_add(ptr_reg->var_off, off_reg->var_off); in adjust_ptr_min_max_vals()
4483 dst_reg->var_off = ptr_reg->var_off; in adjust_ptr_min_max_vals()
4510 dst_reg->var_off = tnum_sub(ptr_reg->var_off, off_reg->var_off); in adjust_ptr_min_max_vals()
4552 dst_reg->var_off.value, 1)) { in adjust_ptr_min_max_vals()
4593 src_known = tnum_is_const(src_reg.var_off); in adjust_scalar_min_max_vals()
4594 dst_known = tnum_is_const(dst_reg->var_off); in adjust_scalar_min_max_vals()
4634 dst_reg->var_off = tnum_add(dst_reg->var_off, src_reg.var_off); in adjust_scalar_min_max_vals()
4660 dst_reg->var_off = tnum_sub(dst_reg->var_off, src_reg.var_off); in adjust_scalar_min_max_vals()
4663 dst_reg->var_off = tnum_mul(dst_reg->var_off, src_reg.var_off); in adjust_scalar_min_max_vals()
4693 __mark_reg_known(dst_reg, dst_reg->var_off.value & in adjust_scalar_min_max_vals()
4694 src_reg.var_off.value); in adjust_scalar_min_max_vals()
4700 dst_reg->var_off = tnum_and(dst_reg->var_off, src_reg.var_off); in adjust_scalar_min_max_vals()
4701 dst_reg->umin_value = dst_reg->var_off.value; in adjust_scalar_min_max_vals()
4721 __mark_reg_known(dst_reg, dst_reg->var_off.value | in adjust_scalar_min_max_vals()
4722 src_reg.var_off.value); in adjust_scalar_min_max_vals()
4728 dst_reg->var_off = tnum_or(dst_reg->var_off, src_reg.var_off); in adjust_scalar_min_max_vals()
4730 dst_reg->umax_value = dst_reg->var_off.value | in adjust_scalar_min_max_vals()
4731 dst_reg->var_off.mask; in adjust_scalar_min_max_vals()
4769 dst_reg->var_off = tnum_lshift(dst_reg->var_off, umin_val); in adjust_scalar_min_max_vals()
4797 dst_reg->var_off = tnum_rshift(dst_reg->var_off, umin_val); in adjust_scalar_min_max_vals()
4817 dst_reg->var_off = tnum_arshift(dst_reg->var_off, umin_val); in adjust_scalar_min_max_vals()
5231 if (tnum_is_const(reg->var_off)) in is_branch_taken()
5232 return !!tnum_equals_const(reg->var_off, val); in is_branch_taken()
5235 if (tnum_is_const(reg->var_off)) in is_branch_taken()
5236 return !tnum_equals_const(reg->var_off, val); in is_branch_taken()
5239 if ((~reg->var_off.mask & reg->var_off.value) & val) in is_branch_taken()
5241 if (!((reg->var_off.mask | reg->var_off.value) & val)) in is_branch_taken()
5355 u64 old_v = reg->var_off.value; in reg_set_min_max()
5358 reg->var_off.value = (old_v & hi_mask) | val; in reg_set_min_max()
5359 reg->var_off.mask &= hi_mask; in reg_set_min_max()
5366 false_reg->var_off = tnum_and(false_reg->var_off, in reg_set_min_max()
5369 true_reg->var_off = tnum_or(true_reg->var_off, in reg_set_min_max()
5379 false_umax += gen_hi_max(false_reg->var_off); in reg_set_min_max()
5380 true_umin += gen_hi_min(true_reg->var_off); in reg_set_min_max()
5408 false_umin += gen_hi_min(false_reg->var_off); in reg_set_min_max()
5409 true_umax += gen_hi_max(true_reg->var_off); in reg_set_min_max()
5467 u64 old_v = reg->var_off.value; in reg_set_min_max_inv()
5470 reg->var_off.value = (old_v & hi_mask) | val; in reg_set_min_max_inv()
5471 reg->var_off.mask &= hi_mask; in reg_set_min_max_inv()
5478 false_reg->var_off = tnum_and(false_reg->var_off, in reg_set_min_max_inv()
5481 true_reg->var_off = tnum_or(true_reg->var_off, in reg_set_min_max_inv()
5491 false_umin += gen_hi_min(false_reg->var_off); in reg_set_min_max_inv()
5492 true_umax += gen_hi_max(true_reg->var_off); in reg_set_min_max_inv()
5517 false_umax += gen_hi_max(false_reg->var_off); in reg_set_min_max_inv()
5518 true_umin += gen_hi_min(true_reg->var_off); in reg_set_min_max_inv()
5565 src_reg->var_off = dst_reg->var_off = tnum_intersect(src_reg->var_off, in __reg_combine_min_max()
5566 dst_reg->var_off); in __reg_combine_min_max()
5610 !tnum_equals_const(reg->var_off, 0) || in mark_ptr_or_null_reg()
5843 tnum_is_const(src_reg->var_off)) in check_cond_jmp_op()
5844 pred = is_branch_taken(dst_reg, src_reg->var_off.value, in check_cond_jmp_op()
5890 if (tnum_is_const(src_reg->var_off) || in check_cond_jmp_op()
5891 (is_jmp32 && tnum_is_const(src_lo->var_off))) in check_cond_jmp_op()
5895 ? src_lo->var_off.value in check_cond_jmp_op()
5896 : src_reg->var_off.value, in check_cond_jmp_op()
5898 else if (tnum_is_const(dst_reg->var_off) || in check_cond_jmp_op()
5899 (is_jmp32 && tnum_is_const(dst_lo->var_off))) in check_cond_jmp_op()
5903 ? dst_lo->var_off.value in check_cond_jmp_op()
5904 : dst_reg->var_off.value, in check_cond_jmp_op()
6138 if (!tnum_in(range, reg->var_off)) { in check_return_code()
6142 if (!tnum_is_unknown(reg->var_off)) { in check_return_code()
6143 tnum_strn(tn_buf, sizeof(tn_buf), reg->var_off); in check_return_code()
6154 tnum_in(enforce_attach_type_range, reg->var_off)) in check_return_code()
6845 tnum_in(rold->var_off, rcur->var_off); in regsafe()
6867 tnum_in(rold->var_off, rcur->var_off); in regsafe()
6904 tnum_in(rold->var_off, rcur->var_off); in regsafe()