reg_smin
{"smin", reg_smin(reg), reg_smin(reg) == S64_MIN},
s64 smin = reg_smin(reg);
s64 smin = reg_smin(reg);
ptr_limit = mask_to_left ? reg_smin(ptr_reg) : reg_umax(ptr_reg);
bool off_is_neg = reg_smin(off_reg) < 0;
(reg_smin(off_reg) < 0) != (reg_smax(off_reg) < 0))
s64 smin_val = reg_smin(off_reg), smax_val = reg_smax(off_reg);
s64 smin = reg_smin(dst_reg);
if (check_mul_overflow(smin, reg_smin(src_reg), &tmp_prod[0]) ||
check_mul_overflow(smax, reg_smin(src_reg), &tmp_prod[2]) ||
s64 smin = reg_smin(dst_reg);
s64 src_val = reg_smin(src_reg); /* non-zero, const divisor */
s64 src_val = reg_smin(src_reg); /* non-zero, const divisor */
if (reg_smin(dst_reg) >= -res_max_abs && reg_smax(dst_reg) <= res_max_abs)
if (reg_smin(dst_reg) >= 0) {
reg_set_srange64(dst_reg, max(reg_smin(dst_reg), -res_max_abs), 0);
reg_set_srange64(dst_reg, reg_smin(dst_reg) >> umin_val,
&& reg_smin(src_reg) == reg_smax(src_reg)
if (reg_smin(dst_reg) == -1 && reg_smax(dst_reg) == 0)
s64 smin1 = is_jmp32 ? (s64)reg_s32_min(reg1) : reg_smin(reg1);
s64 smin2 = is_jmp32 ? (s64)reg_s32_min(reg2) : reg_smin(reg2);
cnum64_intersect_with_srange(®2->r64, reg_smin(reg1), S64_MAX);
cnum64_intersect_with_srange(®2->r64, reg_smin(reg1) + 1, S64_MAX);
max_t(s64, reg_smin(reg), s32_min),
if (reg_smin(reg) > S64_MIN) {
verbose(env, " smin=%lld", reg_smin(reg));
min_off = reg_smin(ptr_reg) + off;
min_off = reg_smin(reg) + off;
map->value_size, reg_smin(reg) + off, size);
map->value_size, reg_smin(reg) + off, size);
if (reg_smin(reg) < 0 &&
(reg_smin(reg) == S64_MIN ||
(off + reg_smin(reg) != (s64)(s32)(off + reg_smin(reg))) ||
reg_smin(reg) + off < 0)) {
err = __check_mem_access(env, reg, argno, reg_smin(reg) + off, size,
if (reg_smin(reg) < 0) {
if (reg_smin(reg) + off < p + field->size &&
if (reg_smin(reg) < 0) {
top_smin_value = ((u64)reg_smin(reg) >> num_bits) << num_bits;
init_s64_min = (s8)reg_smin(reg);
init_s64_min = (s16)reg_smin(reg);
init_s64_min = (s32)reg_smin(reg);
reg_smin(reg) <= -BPF_MAX_VAR_OFF) {
min_off = reg_smin(reg) + off;
min_off = reg_smin(reg) + off;
if (reg_smin(size_reg) < 0) {
return range.minval <= reg_smin(reg) && reg_smax(reg) <= range.maxval;