Lines Matching refs:src_reg

170 static u8 add_2reg(u8 byte, u32 dst_reg, u32 src_reg)  in add_2reg()  argument
172 return byte + reg2hex[dst_reg] + (reg2hex[src_reg] << 3); in add_2reg()
362 static void emit_mov_reg(u8 **pprog, bool is64, u32 dst_reg, u32 src_reg) in emit_mov_reg() argument
369 EMIT_mov(dst_reg, src_reg); in emit_mov_reg()
372 if (is_ereg(dst_reg) || is_ereg(src_reg)) in emit_mov_reg()
373 EMIT1(add_2mod(0x40, dst_reg, src_reg)); in emit_mov_reg()
374 EMIT2(0x89, add_2reg(0xC0, dst_reg, src_reg)); in emit_mov_reg()
398 u32 src_reg = insn->src_reg; in do_jit() local
425 EMIT1(add_2mod(0x48, dst_reg, src_reg)); in do_jit()
426 else if (is_ereg(dst_reg) || is_ereg(src_reg)) in do_jit()
427 EMIT1(add_2mod(0x40, dst_reg, src_reg)); in do_jit()
428 EMIT2(b2, add_2reg(0xC0, dst_reg, src_reg)); in do_jit()
435 dst_reg, src_reg); in do_jit()
524 EMIT_mov(AUX_REG, src_reg); in do_jit()
575 emit_mov_reg(&prog, is64, BPF_REG_0, src_reg); in do_jit()
633 if (src_reg != BPF_REG_4) { /* common case */ in do_jit()
637 EMIT_mov(BPF_REG_4, src_reg); in do_jit()
653 if (src_reg != BPF_REG_4) in do_jit()
751 if (is_ereg(dst_reg) || is_ereg(src_reg) || in do_jit()
753 src_reg == BPF_REG_1 || src_reg == BPF_REG_2) in do_jit()
754 EMIT2(add_2mod(0x40, dst_reg, src_reg), 0x88); in do_jit()
759 if (is_ereg(dst_reg) || is_ereg(src_reg)) in do_jit()
760 EMIT3(0x66, add_2mod(0x40, dst_reg, src_reg), 0x89); in do_jit()
765 if (is_ereg(dst_reg) || is_ereg(src_reg)) in do_jit()
766 EMIT2(add_2mod(0x40, dst_reg, src_reg), 0x89); in do_jit()
771 EMIT2(add_2mod(0x48, dst_reg, src_reg), 0x89); in do_jit()
773 EMIT2(add_2reg(0x40, dst_reg, src_reg), insn->off); in do_jit()
775 EMIT1_off32(add_2reg(0x80, dst_reg, src_reg), in do_jit()
782 EMIT3(add_2mod(0x48, src_reg, dst_reg), 0x0F, 0xB6); in do_jit()
786 EMIT3(add_2mod(0x48, src_reg, dst_reg), 0x0F, 0xB7); in do_jit()
790 if (is_ereg(dst_reg) || is_ereg(src_reg)) in do_jit()
791 EMIT2(add_2mod(0x40, src_reg, dst_reg), 0x8B); in do_jit()
797 EMIT2(add_2mod(0x48, src_reg, dst_reg), 0x8B); in do_jit()
804 EMIT2(add_2reg(0x40, src_reg, dst_reg), insn->off); in do_jit()
806 EMIT1_off32(add_2reg(0x80, src_reg, dst_reg), in do_jit()
813 if (is_ereg(dst_reg) || is_ereg(src_reg)) in do_jit()
814 EMIT3(0xF0, add_2mod(0x40, dst_reg, src_reg), 0x01); in do_jit()
819 EMIT3(0xF0, add_2mod(0x48, dst_reg, src_reg), 0x01); in do_jit()
821 EMIT2(add_2reg(0x40, dst_reg, src_reg), insn->off); in do_jit()
823 EMIT1_off32(add_2reg(0x80, dst_reg, src_reg), in do_jit()
866 EMIT1(add_2mod(0x48, dst_reg, src_reg)); in do_jit()
867 else if (is_ereg(dst_reg) || is_ereg(src_reg)) in do_jit()
868 EMIT1(add_2mod(0x40, dst_reg, src_reg)); in do_jit()
869 EMIT2(0x39, add_2reg(0xC0, dst_reg, src_reg)); in do_jit()
876 EMIT1(add_2mod(0x48, dst_reg, src_reg)); in do_jit()
877 else if (is_ereg(dst_reg) || is_ereg(src_reg)) in do_jit()
878 EMIT1(add_2mod(0x40, dst_reg, src_reg)); in do_jit()
879 EMIT2(0x85, add_2reg(0xC0, dst_reg, src_reg)); in do_jit()