Lines Matching refs:subprog

146 	int start = idx + insn->imm + 1, subprog;
148 subprog = bpf_find_subprog(env, start);
149 if (verifier_bug_if(subprog < 0, env, "get stack depth: no program at insn %d", start))
151 return env->subprog_info[subprog].stack_depth;
206 /* NOTE: fake 'exit' subprog should be updated as well. */
340 /* move fake 'exit' subprog as well */
366 /* update fake 'exit' subprog as well */
1004 /* restore the start of fake 'exit' subprog as well */
1031 int i, j, subprog_start, subprog_end = 0, len, subprog;
1045 subprog = bpf_find_subprog(env, i + insn->imm + 1);
1046 if (verifier_bug_if(subprog < 0, env, "No program to jit at insn %d",
1049 /* temporarily remember subprog id inside insn instead of
1052 insn->off = subprog;
1181 subprog = insn->off;
1182 insn[0].imm = (u32)(long)func[subprog]->bpf_func;
1183 insn[1].imm = ((u64)(long)func[subprog]->bpf_func) >> 32;
1188 subprog = insn->off;
1189 insn->imm = BPF_CALL_IMM(func[subprog]->bpf_func);
1200 * by using its subprog id, available from the off field of
1254 subprog = bpf_find_subprog(env, i + insn->imm + 1);
1255 insn->off = subprog;
1274 * patch it anymore as we're freeing the subprog JIT memory.
1387 struct bpf_subprog_info *subprog = &env->subprog_info[i];
1388 u16 outgoing = subprog->stack_arg_cnt - bpf_in_stack_arg_cnt(subprog);
1390 if (subprog->max_out_stack_arg_cnt > outgoing) {
1393 i, subprog->max_out_stack_arg_cnt, outgoing);
1460 verifier_bug(env, "only one hidden subprog supported");
1464 * ones for the hidden subprog. Hence all of the adjustment operations
2382 /* Add ST insn to subprog prologue to init extra stack */
2513 * subprog stack_depth is increased by the size of 3 registers.
2568 struct bpf_subprog_info *subprog = env->subprog_info;
2586 if ((subprog + 1)->start == i + 1) {
2587 if (modified && !subprog->keep_fastcall_stack)
2588 subprog->stack_depth = -subprog->fastcall_stack_off;
2589 subprog++;