Lines Matching refs:bpf_insn

96 static void emit(struct bpf_gen *gen, struct bpf_insn insn)  in emit()
104 static void emit2(struct bpf_gen *gen, struct bpf_insn insn1, struct bpf_insn insn2) in emit2()
670 move_blob2blob(gen, insn + offsetof(struct bpf_insn, imm), 4, in emit_relo_kfunc_btf()
671 kdesc->insn + offsetof(struct bpf_insn, imm)); in emit_relo_kfunc_btf()
672 move_blob2blob(gen, insn + offsetof(struct bpf_insn, off), 2, in emit_relo_kfunc_btf()
673 kdesc->insn + offsetof(struct bpf_insn, off)); in emit_relo_kfunc_btf()
693 emit(gen, BPF_ST_MEM(BPF_W, BPF_REG_8, offsetof(struct bpf_insn, imm), 0)); in emit_relo_kfunc_btf()
694 emit(gen, BPF_ST_MEM(BPF_H, BPF_REG_8, offsetof(struct bpf_insn, off), 0)); in emit_relo_kfunc_btf()
698 emit(gen, BPF_STX_MEM(BPF_W, BPF_REG_8, BPF_REG_7, offsetof(struct bpf_insn, imm))); in emit_relo_kfunc_btf()
705 emit(gen, BPF_ST_MEM(BPF_H, BPF_REG_8, offsetof(struct bpf_insn, off), 0)); in emit_relo_kfunc_btf()
714 emit(gen, BPF_ST_MEM(BPF_H, BPF_REG_8, offsetof(struct bpf_insn, off), btf_fd_idx)); in emit_relo_kfunc_btf()
719 offsetof(struct bpf_insn, imm))); in emit_relo_kfunc_btf()
721 offsetof(struct bpf_insn, off))); in emit_relo_kfunc_btf()
737 offsetof(struct bpf_insn, imm))); in emit_ksym_relo_log()
738 emit(gen, BPF_LDX_MEM(BPF_H, BPF_REG_9, BPF_REG_8, sizeof(struct bpf_insn) + in emit_ksym_relo_log()
739 offsetof(struct bpf_insn, imm))); in emit_ksym_relo_log()
742 emit(gen, BPF_LDX_MEM(BPF_B, BPF_REG_9, BPF_REG_8, offsetofend(struct bpf_insn, code))); in emit_ksym_relo_log()
760 move_blob2blob(gen, insn + offsetof(struct bpf_insn, imm), 4, in emit_relo_ksym_typeless()
761 kdesc->insn + offsetof(struct bpf_insn, imm)); in emit_relo_ksym_typeless()
762 move_blob2blob(gen, insn + sizeof(struct bpf_insn) + offsetof(struct bpf_insn, imm), 4, in emit_relo_ksym_typeless()
763 kdesc->insn + sizeof(struct bpf_insn) + offsetof(struct bpf_insn, imm)); in emit_relo_ksym_typeless()
774 emit(gen, BPF_STX_MEM(BPF_W, BPF_REG_8, BPF_REG_9, offsetof(struct bpf_insn, imm))); in emit_relo_ksym_typeless()
778 sizeof(struct bpf_insn) + offsetof(struct bpf_insn, imm))); in emit_relo_ksym_typeless()
807 move_blob2blob(gen, insn + offsetof(struct bpf_insn, imm), 4, in emit_relo_ksym_btf()
808 kdesc->insn + offsetof(struct bpf_insn, imm)); in emit_relo_ksym_btf()
809 move_blob2blob(gen, insn + sizeof(struct bpf_insn) + offsetof(struct bpf_insn, imm), 4, in emit_relo_ksym_btf()
810 kdesc->insn + sizeof(struct bpf_insn) + offsetof(struct bpf_insn, imm)); in emit_relo_ksym_btf()
823 emit(gen, BPF_ST_MEM(BPF_W, BPF_REG_8, offsetof(struct bpf_insn, imm), 0)); in emit_relo_ksym_btf()
824 …emit(gen, BPF_ST_MEM(BPF_W, BPF_REG_8, sizeof(struct bpf_insn) + offsetof(struct bpf_insn, imm), 0… in emit_relo_ksym_btf()
828 emit(gen, BPF_STX_MEM(BPF_W, BPF_REG_8, BPF_REG_7, offsetof(struct bpf_insn, imm))); in emit_relo_ksym_btf()
832 sizeof(struct bpf_insn) + offsetof(struct bpf_insn, imm))); in emit_relo_ksym_btf()
838 emit(gen, BPF_LDX_MEM(BPF_B, BPF_REG_9, BPF_REG_8, offsetofend(struct bpf_insn, code))); in emit_relo_ksym_btf()
840 emit(gen, BPF_STX_MEM(BPF_B, BPF_REG_8, BPF_REG_9, offsetofend(struct bpf_insn, code))); in emit_relo_ksym_btf()
866 insn = insns + sizeof(struct bpf_insn) * relo->insn_idx; in emit_relo()
911 insn += sizeof(struct bpf_insn) + offsetof(struct bpf_insn, imm); in cleanup_relos()
934 const char *license, struct bpf_insn *insns, size_t insn_cnt, in bpf_gen__prog_load()
947 insns_off = add_data(gen, insns, insn_cnt * sizeof(struct bpf_insn)); in bpf_gen__prog_load()