stack_off
static void emit_store_stack_imm64(u8 reg, int stack_off, u64 imm64,
emit_sd(RV_REG_FP, stack_off, reg, ctx);
static void emit_store_stack_imm64(u8 **pprog, int reg, int stack_off, u64 imm64)
emit_stx(pprog, BPF_DW, BPF_REG_FP, reg, stack_off);
int stack_off = -stack_depth - 8;
insn_buf[0] = BPF_LDX_MEM(BPF_DW, BPF_REG_AX, BPF_REG_10, stack_off);
insn_buf[3] = BPF_STX_MEM(BPF_DW, BPF_REG_10, BPF_REG_AX, stack_off);
int stack_off = -i - 1;
if (state->allocated_stack <= stack_off)
if (state->stack[spi].slot_type[stack_off % BPF_REG_SIZE] == STACK_DYNPTR) {
int stack_off;
stack_off = key->off + key->var_off.value;
slot = -stack_off - 1;
int new_flen = 0, pass = 0, target, i, stack_off;
stack_off = fp->k * 4 + 4;
-stack_off);
if (new_prog && new_prog->aux->stack_depth < stack_off)
new_prog->aux->stack_depth = stack_off;
stack_off = fp->k * 4 + 4;
-stack_off);
stack_off(btf_fd));
stack_off(prog_fd[gen->nr_progs])));
static void move_stack2blob(struct bpf_gen *gen, int off, int size, int stack_off)
emit(gen, BPF_LDX_MEM(insn_bytes_to_bpf_size(size), BPF_REG_0, BPF_REG_10, stack_off));
static void move_stack2ctx(struct bpf_gen *gen, int ctx_off, int size, int stack_off)
emit(gen, BPF_LDX_MEM(insn_bytes_to_bpf_size(size), BPF_REG_0, BPF_REG_10, stack_off));
static void emit_sys_close_stack(struct bpf_gen *gen, int stack_off)
emit(gen, BPF_LDX_MEM(BPF_W, BPF_REG_1, BPF_REG_10, stack_off));
emit_sys_close_stack(gen, stack_off(btf_fd));
stack_off(prog_fd[i]));
emit(gen, BPF_STX_MEM(BPF_W, BPF_REG_10, BPF_REG_7, stack_off(btf_fd)));
stack_off(btf_fd));
stack_off(inner_map_fd));
stack_off(inner_map_fd)));
emit_sys_close_stack(gen, stack_off(inner_map_fd));