/kernel/linux/linux-6.6/arch/loongarch/net/ |
H A D | bpf_jit.c | 464 const bool is32 = BPF_CLASS(insn->code) == BPF_ALU || BPF_CLASS(insn->code) == BPF_JMP32; in build_insn() local 471 emit_zext_32(ctx, dst, is32); in build_insn() 477 move_imm(ctx, dst, imm, is32); in build_insn() 484 emit_zext_32(ctx, dst, is32); in build_insn() 493 move_imm(ctx, t1, imm, is32); in build_insn() 496 emit_zext_32(ctx, dst, is32); in build_insn() 503 emit_zext_32(ctx, dst, is32); in build_insn() 512 move_imm(ctx, t1, imm, is32); in build_insn() 515 emit_zext_32(ctx, dst, is32); in build_insn() 522 emit_zext_32(ctx, dst, is32); in build_insn() [all...] |
H A D | bpf_jit.h | 68 static inline void emit_zext_32(struct jit_ctx *ctx, enum loongarch_gpr reg, bool is32) in emit_zext_32() argument 70 if (!is32) in emit_zext_32() 77 static inline void emit_sext_32(struct jit_ctx *ctx, enum loongarch_gpr reg, bool is32) in emit_sext_32() argument 79 if (!is32) in emit_sext_32() 106 static inline void move_imm(struct jit_ctx *ctx, enum loongarch_gpr rd, long imm, bool is32) in move_imm() argument 166 emit_zext_32(ctx, rd, is32); in move_imm()
|
/kernel/linux/linux-5.10/arch/loongarch/net/ |
H A D | ebpf_jit.c | 286 bool is32 = (BPF_CLASS(insn->code) == BPF_ALU); in build_insn() local 307 emit_zext_32(ctx, dst, is32); in build_insn() 312 move_imm32(ctx, dst, imm, is32); in build_insn() 319 emit_zext_32(ctx, dst, is32); in build_insn() 327 move_imm32(ctx, tmp, imm, is32); in build_insn() 330 emit_zext_32(ctx, dst, is32); in build_insn() 337 emit_zext_32(ctx, dst, is32); in build_insn() 345 move_imm32(ctx, tmp, imm, is32); in build_insn() 348 emit_zext_32(ctx, dst, is32); in build_insn() 355 emit_zext_32(ctx, dst, is32); in build_insn() [all...] |
H A D | ebpf_jit.h | 596 static inline void emit_zext_32(struct jit_ctx *ctx, enum loongarch_gpr reg, bool is32) in emit_zext_32() argument 598 if (!is32) in emit_zext_32() 612 int imm32, bool is32) in move_imm32() 645 emit_zext_32(ctx, rd, is32); in move_imm32() 649 long imm64, bool is32) in move_imm64() 663 move_imm32(ctx, rd, imm32, is32); in move_imm64() 611 move_imm32(struct jit_ctx *ctx, enum loongarch_gpr rd, int imm32, bool is32) move_imm32() argument 648 move_imm64(struct jit_ctx *ctx, enum loongarch_gpr rd, long imm64, bool is32) move_imm64() argument
|
/kernel/linux/linux-6.6/arch/s390/net/ |
H A D | bpf_jit_comp.c | 1306 bool is32 = BPF_SIZE(insn->code) == BPF_W; in bpf_jit_insn() local 1311 EMIT6_DISP_LH(0xeb000000, is32 ? (op32) : (op64), \ in bpf_jit_insn() 1314 if (is32 && (insn->imm & BPF_FETCH)) \ in bpf_jit_insn() 1341 is32 ? 0x0058 : 0x0004, REG_W0, REG_0, in bpf_jit_insn() 1344 EMIT6_DISP_LH(0xeb000000, is32 ? 0x0014 : 0x0030, in bpf_jit_insn() 1349 EMIT4(is32 ? 0xb9160000 : 0xb9040000, src_reg, REG_W0); in bpf_jit_insn() 1350 if (is32 && insn_is_zext(&insn[1])) in bpf_jit_insn() 1355 EMIT6_DISP_LH(0xeb000000, is32 ? 0x0014 : 0x0030, in bpf_jit_insn()
|