Lines Matching refs:frame

147 		callchain->sp_starts[i] = subprog_info[st->frame[i]->subprogno].start;  in compute_callchain()
149 callchain->callsites[i] = st->frame[i + 1]->callsite; in compute_callchain()
254 u32 frame, u32 insn_idx) in get_frame_masks() argument
256 if (!instance->frames[frame]) in get_frame_masks()
259 return &instance->frames[frame][relative_idx(instance, insn_idx)]; in get_frame_masks()
264 u32 frame, u32 insn_idx) in alloc_frame_masks() argument
268 if (!instance->frames[frame]) { in alloc_frame_masks()
271 instance->frames[frame] = arr; in alloc_frame_masks()
275 return get_frame_masks(instance, frame, insn_idx); in alloc_frame_masks()
302 struct func_instance *instance, u32 frame, u32 insn_idx, u64 mask) in mark_stack_read() argument
307 masks = alloc_frame_masks(env, instance, frame, insn_idx); in mark_stack_read()
318 int bpf_mark_stack_read(struct bpf_verifier_env *env, u32 frame, u32 insn_idx, u64 mask) in bpf_mark_stack_read() argument
323 err = err ?: mark_stack_read(env, env->liveness->cur_instance, frame, insn_idx, mask); in bpf_mark_stack_read()
351 void bpf_mark_stack_write(struct bpf_verifier_env *env, u32 frame, u64 mask) in bpf_mark_stack_write() argument
353 env->liveness->write_masks_acc[frame] |= mask; in bpf_mark_stack_write()
360 u32 idx, frame, curframe, old_must_write; in commit_stack_write_marks() local
369 for (frame = 0; frame <= curframe; frame++) { in commit_stack_write_marks()
370 mask = liveness->write_masks_acc[frame]; in commit_stack_write_marks()
374 masks = alloc_frame_masks(env, instance, frame, liveness->write_insn_idx); in commit_stack_write_marks()
419 char *pfx, u32 frame, u32 insn_idx, u64 old, u64 new) in log_mask_change() argument
427 bpf_log(&env->log, "%s frame %d insn %d ", fmt_callchain(env, callchain), frame, insn_idx); in log_mask_change()
536 u32 this_subprog_start, callsite, frame; in propagate_to_outer_instance() local
548 for (frame = 0; frame < callchain->curframe; frame++) { in propagate_to_outer_instance()
549 insn = get_frame_masks(instance, frame, this_subprog_start); in propagate_to_outer_instance()
552 bpf_mark_stack_write(env, frame, insn->must_write_acc); in propagate_to_outer_instance()
553 err = mark_stack_read(env, outer_instance, frame, callsite, insn->live_before); in propagate_to_outer_instance()
562 struct func_instance *instance, u32 frame, u32 insn_idx) in update_insn() argument
576 insn = get_frame_masks(instance, frame, insn_idx); in update_insn()
585 succ_insn = get_frame_masks(instance, frame, succ->items[s]); in update_insn()
602 frame, insn_idx, insn->live_before, new_before); in update_insn()
604 frame, insn_idx, insn->must_write_acc, must_write_acc); in update_insn()
614 u32 i, frame, po_start, po_end, cnt, this_subprog_start; in update_instance() local
628 for (frame = 0; frame <= callchain->curframe; frame++) { in update_instance()
629 if (!instance->frames[frame]) in update_instance()
633 insn = get_frame_masks(instance, frame, this_subprog_start + i); in update_instance()
647 for (frame = 0; frame <= instance->callchain.curframe; frame++) { in update_instance()
648 if (!instance->frames[frame]) in update_instance()
652 changed |= update_insn(env, instance, frame, insn_postorder[i]); in update_instance()
681 int err, frame; in bpf_update_live_stack() local
684 for (frame = env->cur_state->curframe; frame >= 0; --frame) { in bpf_update_live_stack()
685 instance = lookup_instance(env, env->cur_state, frame); in bpf_update_live_stack()
712 u32 frame; in bpf_live_stack_query_init() local
715 for (frame = 0; frame <= st->curframe; frame++) { in bpf_live_stack_query_init()
716 instance = lookup_instance(env, st, frame); in bpf_live_stack_query_init()
719 q->instances[frame] = instance; in bpf_live_stack_query_init()