Lines Matching refs:buf
24 static void dump_bytes(const u8 *buf, u32 len, const char *header) in dump_bytes() argument
34 j += scnprintf(line + j, 64 - j, "0x%02x", buf[i]); in dump_bytes()
40 j += scnprintf(line + j, 64 - j, "0x%02x", buf[i]); in dump_bytes()
44 j += scnprintf(line + j, 64 - j, "0x%02x, ", buf[i]); in dump_bytes()
58 u8 *buf; member
152 dump_bytes(ctx->jit.buf, ctx->jit.len, header); in jit_dump()
155 bpf_jit_dump(ctx->prog->len, ctx->jit.len, pass, ctx->jit.buf); in jit_dump()
235 ctx->jit.buf = NULL; in jit_ctx_cleanup()
271 if (!ctx->jit.buf) { in jit_buffer_check()
296 return ctx->emit ? (ctx->jit.buf + ctx->jit.index) : NULL; in effective_jit_buf()
303 u8 *buf = effective_jit_buf(ctx); in handle_prologue() local
308 len = arc_prologue(buf, ctx->arc_regs_clobbered, ctx->frame_size); in handle_prologue()
318 u8 *buf = effective_jit_buf(ctx); in handle_epilogue() local
323 len = arc_epilogue(buf, ctx->arc_regs_clobbered, ctx->frame_size); in handle_epilogue()
403 static int handle_swap(u8 *buf, u8 rd, u8 size, u8 endian, in handle_swap() argument
417 *len = gen_swap(buf, rd, size, endian, force, do_zext); in handle_swap()
587 u8 *buf = effective_jit_buf(ctx); in handle_jumps() local
612 *len += mov_r32_i32(BUF(buf, *len), JIT_REG_TMP, in handle_jumps()
615 *len += mov_r64_i32(BUF(buf, *len), JIT_REG_TMP, in handle_jumps()
631 *len += gen_jmp_32(BUF(buf, *len), rd, rs, cond, in handle_jumps()
634 *len += gen_jmp_64(BUF(buf, *len), rd, rs, cond, in handle_jumps()
645 u8 *buf = effective_jit_buf(ctx); in handle_jmp_epilogue() local
660 *len = gen_jmp_64(buf, 0, 0, ARC_CC_AL, curr_off, epi_off); in handle_jmp_epilogue()
673 u8 *buf = effective_jit_buf(ctx); in handle_call() local
687 *len = gen_func_call(buf, (ARC_ADDR)addr, in_kernel_func); in handle_call()
691 *len += arc_to_bpf_return(BUF(buf, *len)); in handle_call()
708 u8 *buf = effective_jit_buf(ctx); in handle_ld_imm64() local
716 *len = mov_r64_i64(buf, insn->dst_reg, insn->imm, (insn + 1)->imm); in handle_ld_imm64()
744 u8 *buf = effective_jit_buf(ctx); in handle_insn() local
751 len = add_r32(buf, dst, src); in handle_insn()
755 len = add_r32_i32(buf, dst, imm); in handle_insn()
759 len = sub_r32(buf, dst, src); in handle_insn()
763 len = sub_r32_i32(buf, dst, imm); in handle_insn()
767 len = neg_r32(buf, dst); in handle_insn()
771 len = mul_r32(buf, dst, src); in handle_insn()
775 len = mul_r32_i32(buf, dst, imm); in handle_insn()
779 len = div_r32(buf, dst, src, off == 1); in handle_insn()
783 len = div_r32_i32(buf, dst, imm, off == 1); in handle_insn()
787 len = mod_r32(buf, dst, src, off == 1); in handle_insn()
791 len = mod_r32_i32(buf, dst, imm, off == 1); in handle_insn()
795 len = and_r32(buf, dst, src); in handle_insn()
799 len = and_r32_i32(buf, dst, imm); in handle_insn()
803 len = or_r32(buf, dst, src); in handle_insn()
807 len = or_r32_i32(buf, dst, imm); in handle_insn()
811 len = xor_r32(buf, dst, src); in handle_insn()
815 len = xor_r32_i32(buf, dst, imm); in handle_insn()
819 len = lsh_r32(buf, dst, src); in handle_insn()
823 len = lsh_r32_i32(buf, dst, imm); in handle_insn()
827 len = rsh_r32(buf, dst, src); in handle_insn()
831 len = rsh_r32_i32(buf, dst, imm); in handle_insn()
835 len = arsh_r32(buf, dst, src); in handle_insn()
839 len = arsh_r32_i32(buf, dst, imm); in handle_insn()
843 len = mov_r32(buf, dst, src, (u8)off); in handle_insn()
847 len = mov_r32_i32(buf, dst, imm); in handle_insn()
853 CHECK_RET(handle_swap(buf, dst, imm, BPF_SRC(code), in handle_insn()
860 len = add_r64(buf, dst, src); in handle_insn()
864 len = add_r64_i32(buf, dst, imm); in handle_insn()
868 len = sub_r64(buf, dst, src); in handle_insn()
872 len = sub_r64_i32(buf, dst, imm); in handle_insn()
876 len = neg_r64(buf, dst); in handle_insn()
880 len = mul_r64(buf, dst, src); in handle_insn()
884 len = mul_r64_i32(buf, dst, imm); in handle_insn()
888 len = and_r64(buf, dst, src); in handle_insn()
892 len = and_r64_i32(buf, dst, imm); in handle_insn()
896 len = or_r64(buf, dst, src); in handle_insn()
900 len = or_r64_i32(buf, dst, imm); in handle_insn()
904 len = xor_r64(buf, dst, src); in handle_insn()
908 len = xor_r64_i32(buf, dst, imm); in handle_insn()
912 len = lsh_r64(buf, dst, src); in handle_insn()
916 len = lsh_r64_i32(buf, dst, imm); in handle_insn()
920 len = rsh_r64(buf, dst, src); in handle_insn()
924 len = rsh_r64_i32(buf, dst, imm); in handle_insn()
928 len = arsh_r64(buf, dst, src); in handle_insn()
932 len = arsh_r64_i32(buf, dst, imm); in handle_insn()
936 len = mov_r64(buf, dst, src, (u8)off); in handle_insn()
940 len = mov_r64_i32(buf, dst, imm); in handle_insn()
953 len = load_r(buf, dst, src, off, BPF_SIZE(code), false); in handle_insn()
958 len = load_r(buf, dst, src, off, BPF_SIZE(code), true); in handle_insn()
965 len = store_r(buf, src, dst, off, BPF_SIZE(code)); in handle_insn()
971 len = store_i(buf, imm, dst, off, BPF_SIZE(code)); in handle_insn()
1044 len += zext(BUF(buf, len), dst); in handle_insn()
1135 ctx->bpf_header = bpf_jit_binary_alloc(ctx->jit.len, &ctx->jit.buf, in jit_prepare_final_mem_alloc()
1241 BUF(ctx->jit.buf, ctx->jit.len)); in jit_finalize()
1247 prog->bpf_func = (void *)ctx->jit.buf; in jit_finalize()
1283 ctx->jit.buf = (u8 *)ctx->prog->bpf_func; in jit_resume_context()