/kernel/linux/linux-5.10/arch/riscv/net/ |
H A D | bpf_jit_comp64.c | 210 static void emit_bcc(u8 cond, u8 rd, u8 rs, int rvoff, in emit_bcc() argument 215 emit(rv_beq(rd, rs, rvoff >> 1), ctx); in emit_bcc() 218 emit(rv_bltu(rs, rd, rvoff >> 1), ctx); in emit_bcc() 221 emit(rv_bltu(rd, rs, rvoff >> 1), ctx); in emit_bcc() 224 emit(rv_bgeu(rd, rs, rvoff >> 1), ctx); in emit_bcc() 227 emit(rv_bgeu(rs, rd, rvoff >> 1), ctx); in emit_bcc() 230 emit(rv_bne(rd, rs, rvoff >> 1), ctx); in emit_bcc() 233 emit(rv_blt(rs, rd, rvoff >> 1), ctx); in emit_bcc() 236 emit(rv_blt(rd, rs, rvoff >> 1), ctx); in emit_bcc() 239 emit(rv_bge(rd, rs, rvoff >> in emit_bcc() 246 emit_branch(u8 cond, u8 rd, u8 rs, int rvoff, struct rv_jit_context *ctx) emit_branch() argument 397 emit_jump_and_link(u8 rd, s64 rvoff, bool fixed_addr, struct rv_jit_context *ctx) emit_jump_and_link() argument 441 int s, e, rvoff, ret, i = insn - ctx->prog->insnsi; bpf_jit_emit_insn() local 775 emit_branch(BPF_OP(code), rd, rs, rvoff, ctx); bpf_jit_emit_insn() local 819 emit_branch(BPF_OP(code), rd, rs, rvoff, ctx); bpf_jit_emit_insn() local [all...] |
H A D | bpf_jit_comp32.c | 227 static void emit_jump_and_link(u8 rd, s32 rvoff, bool force_jalr, in emit_jump_and_link() argument 232 if (rvoff && is_21b_int(rvoff) && !force_jalr) { in emit_jump_and_link() 233 emit(rv_jal(rd, rvoff >> 1), ctx); in emit_jump_and_link() 237 upper = (rvoff + (1 << 11)) >> 12; in emit_jump_and_link() 238 lower = rvoff & 0xfff; in emit_jump_and_link() 564 static int emit_branch_r64(const s8 *src1, const s8 *src2, s32 rvoff, in emit_branch_r64() argument 647 rvoff -= ninsns_rvoff(e - s); in emit_branch_r64() 648 emit_jump_and_link(RV_REG_ZERO, rvoff, true, ctx); in emit_branch_r64() 652 static int emit_bcc(u8 op, u8 rd, u8 rs, int rvoff, struc argument 722 emit_branch_r32(const s8 *src1, const s8 *src2, s32 rvoff, struct rv_jit_context *ctx, const u8 op) emit_branch_r32() argument 961 int s, e, rvoff, i = insn - ctx->prog->insnsi; bpf_jit_emit_insn() local [all...] |
/kernel/linux/linux-6.6/arch/riscv/net/ |
H A D | bpf_jit_comp64.c | 254 static void emit_bcc(u8 cond, u8 rd, u8 rs, int rvoff, in emit_bcc() argument 259 emit(rv_beq(rd, rs, rvoff >> 1), ctx); in emit_bcc() 262 emit(rv_bltu(rs, rd, rvoff >> 1), ctx); in emit_bcc() 265 emit(rv_bltu(rd, rs, rvoff >> 1), ctx); in emit_bcc() 268 emit(rv_bgeu(rd, rs, rvoff >> 1), ctx); in emit_bcc() 271 emit(rv_bgeu(rs, rd, rvoff >> 1), ctx); in emit_bcc() 274 emit(rv_bne(rd, rs, rvoff >> 1), ctx); in emit_bcc() 277 emit(rv_blt(rs, rd, rvoff >> 1), ctx); in emit_bcc() 280 emit(rv_blt(rd, rs, rvoff >> 1), ctx); in emit_bcc() 283 emit(rv_bge(rd, rs, rvoff >> in emit_bcc() 290 emit_branch(u8 cond, u8 rd, u8 rs, int rvoff, struct rv_jit_context *ctx) emit_branch() argument 440 emit_jump_and_link(u8 rd, s64 rvoff, bool fixed_addr, struct rv_jit_context *ctx) emit_jump_and_link() argument 653 s64 rvoff; gen_jump_or_nops() local 1074 int s, e, rvoff, ret, i = insn - ctx->prog->insnsi; bpf_jit_emit_insn() local 1439 emit_branch(BPF_OP(code), rd, rs, rvoff, ctx); bpf_jit_emit_insn() local 1483 emit_branch(BPF_OP(code), rd, rs, rvoff, ctx); bpf_jit_emit_insn() local [all...] |
H A D | bpf_jit_comp32.c | 227 static void emit_jump_and_link(u8 rd, s32 rvoff, bool force_jalr, in emit_jump_and_link() argument 232 if (rvoff && is_21b_int(rvoff) && !force_jalr) { in emit_jump_and_link() 233 emit(rv_jal(rd, rvoff >> 1), ctx); in emit_jump_and_link() 237 upper = (rvoff + (1 << 11)) >> 12; in emit_jump_and_link() 238 lower = rvoff & 0xfff; in emit_jump_and_link() 564 static int emit_branch_r64(const s8 *src1, const s8 *src2, s32 rvoff, in emit_branch_r64() argument 647 rvoff -= ninsns_rvoff(e - s); in emit_branch_r64() 648 emit_jump_and_link(RV_REG_ZERO, rvoff, true, ctx); in emit_branch_r64() 652 static int emit_bcc(u8 op, u8 rd, u8 rs, int rvoff, struc argument 722 emit_branch_r32(const s8 *src1, const s8 *src2, s32 rvoff, struct rv_jit_context *ctx, const u8 op) emit_branch_r32() argument 959 int s, e, rvoff, i = insn - ctx->prog->insnsi; bpf_jit_emit_insn() local [all...] |