Lines Matching refs:dstk

206 static inline void emit_ia32_mov_i(const u8 dst, const u32 val, bool dstk,  in emit_ia32_mov_i()  argument
212 if (dstk) { in emit_ia32_mov_i()
234 static inline void emit_ia32_mov_r(const u8 dst, const u8 src, bool dstk, in emit_ia32_mov_r() argument
244 if (dstk) in emit_ia32_mov_r()
256 const u8 src[], bool dstk, in emit_ia32_mov_r64() argument
260 emit_ia32_mov_r(dst_lo, src_lo, dstk, sstk, pprog); in emit_ia32_mov_r64()
263 emit_ia32_mov_r(dst_hi, src_hi, dstk, sstk, pprog); in emit_ia32_mov_r64()
266 emit_ia32_mov_i(dst_hi, 0, dstk, pprog); in emit_ia32_mov_r64()
271 const u32 val, bool dstk, u8 **pprog) in emit_ia32_mov_i64() argument
277 emit_ia32_mov_i(dst_lo, val, dstk, pprog); in emit_ia32_mov_i64()
278 emit_ia32_mov_i(dst_hi, hi, dstk, pprog); in emit_ia32_mov_i64()
285 static inline void emit_ia32_mul_r(const u8 dst, const u8 src, bool dstk, in emit_ia32_mul_r() argument
296 if (dstk) in emit_ia32_mul_r()
306 if (dstk) in emit_ia32_mul_r()
318 bool dstk, u8 **pprog, in emit_ia32_to_le_r64() argument
323 u8 dreg_lo = dstk ? IA32_EAX : dst_lo; in emit_ia32_to_le_r64()
324 u8 dreg_hi = dstk ? IA32_EDX : dst_hi; in emit_ia32_to_le_r64()
326 if (dstk && val != 64) { in emit_ia32_to_le_r64()
354 if (dstk && val != 64) { in emit_ia32_to_le_r64()
366 bool dstk, u8 **pprog, in emit_ia32_to_be_r64() argument
371 u8 dreg_lo = dstk ? IA32_EAX : dst_lo; in emit_ia32_to_be_r64()
372 u8 dreg_hi = dstk ? IA32_EDX : dst_hi; in emit_ia32_to_be_r64()
374 if (dstk) { in emit_ia32_to_be_r64()
420 if (dstk) { in emit_ia32_to_be_r64()
436 bool dstk, bool sstk, u8 **pprog) in emit_ia32_div_mod_r() argument
449 if (dstk) in emit_ia32_div_mod_r()
463 if (dstk) in emit_ia32_div_mod_r()
469 if (dstk) in emit_ia32_div_mod_r()
483 bool dstk, bool sstk, u8 **pprog) in emit_ia32_shift_r() argument
487 u8 dreg = dstk ? IA32_EAX : dst; in emit_ia32_shift_r()
490 if (dstk) in emit_ia32_shift_r()
513 if (dstk) in emit_ia32_shift_r()
524 const u8 dst, const u8 src, bool dstk, in emit_ia32_alu_r() argument
530 u8 dreg = dstk ? IA32_EDX : dst; in emit_ia32_alu_r()
536 if (dstk) in emit_ia32_alu_r()
569 if (dstk) in emit_ia32_alu_r()
579 bool dstk, bool sstk, in emit_ia32_alu_r64() argument
584 emit_ia32_alu_r(is64, false, op, dst_lo, src_lo, dstk, sstk, &prog); in emit_ia32_alu_r64()
586 emit_ia32_alu_r(is64, true, op, dst_hi, src_hi, dstk, sstk, in emit_ia32_alu_r64()
589 emit_ia32_mov_i(dst_hi, 0, dstk, &prog); in emit_ia32_alu_r64()
598 const u8 dst, const s32 val, bool dstk, in emit_ia32_alu_i() argument
603 u8 dreg = dstk ? IA32_EAX : dst; in emit_ia32_alu_i()
606 if (dstk) in emit_ia32_alu_i()
669 if (dstk) in emit_ia32_alu_i()
679 bool dstk, u8 **pprog, in emit_ia32_alu_i64() argument
688 emit_ia32_alu_i(is64, false, op, dst_lo, val, dstk, &prog); in emit_ia32_alu_i64()
690 emit_ia32_alu_i(is64, true, op, dst_hi, hi, dstk, &prog); in emit_ia32_alu_i64()
692 emit_ia32_mov_i(dst_hi, 0, dstk, &prog); in emit_ia32_alu_i64()
698 static inline void emit_ia32_neg64(const u8 dst[], bool dstk, u8 **pprog) in emit_ia32_neg64() argument
702 u8 dreg_lo = dstk ? IA32_EAX : dst_lo; in emit_ia32_neg64()
703 u8 dreg_hi = dstk ? IA32_EDX : dst_hi; in emit_ia32_neg64()
705 if (dstk) { in emit_ia32_neg64()
719 if (dstk) { in emit_ia32_neg64()
732 bool dstk, bool sstk, u8 **pprog) in emit_ia32_lsh_r64() argument
736 u8 dreg_lo = dstk ? IA32_EAX : dst_lo; in emit_ia32_lsh_r64()
737 u8 dreg_hi = dstk ? IA32_EDX : dst_hi; in emit_ia32_lsh_r64()
739 if (dstk) { in emit_ia32_lsh_r64()
771 if (dstk) { in emit_ia32_lsh_r64()
785 bool dstk, bool sstk, u8 **pprog) in emit_ia32_arsh_r64() argument
789 u8 dreg_lo = dstk ? IA32_EAX : dst_lo; in emit_ia32_arsh_r64()
790 u8 dreg_hi = dstk ? IA32_EDX : dst_hi; in emit_ia32_arsh_r64()
792 if (dstk) { in emit_ia32_arsh_r64()
824 if (dstk) { in emit_ia32_arsh_r64()
837 static inline void emit_ia32_rsh_r64(const u8 dst[], const u8 src[], bool dstk, in emit_ia32_rsh_r64() argument
842 u8 dreg_lo = dstk ? IA32_EAX : dst_lo; in emit_ia32_rsh_r64()
843 u8 dreg_hi = dstk ? IA32_EDX : dst_hi; in emit_ia32_rsh_r64()
845 if (dstk) { in emit_ia32_rsh_r64()
877 if (dstk) { in emit_ia32_rsh_r64()
891 bool dstk, u8 **pprog) in emit_ia32_lsh_i64() argument
895 u8 dreg_lo = dstk ? IA32_EAX : dst_lo; in emit_ia32_lsh_i64()
896 u8 dreg_hi = dstk ? IA32_EDX : dst_hi; in emit_ia32_lsh_i64()
898 if (dstk) { in emit_ia32_lsh_i64()
926 if (dstk) { in emit_ia32_lsh_i64()
939 bool dstk, u8 **pprog) in emit_ia32_rsh_i64() argument
943 u8 dreg_lo = dstk ? IA32_EAX : dst_lo; in emit_ia32_rsh_i64()
944 u8 dreg_hi = dstk ? IA32_EDX : dst_hi; in emit_ia32_rsh_i64()
946 if (dstk) { in emit_ia32_rsh_i64()
975 if (dstk) { in emit_ia32_rsh_i64()
988 bool dstk, u8 **pprog) in emit_ia32_arsh_i64() argument
992 u8 dreg_lo = dstk ? IA32_EAX : dst_lo; in emit_ia32_arsh_i64()
993 u8 dreg_hi = dstk ? IA32_EDX : dst_hi; in emit_ia32_arsh_i64()
995 if (dstk) { in emit_ia32_arsh_i64()
1024 if (dstk) { in emit_ia32_arsh_i64()
1035 static inline void emit_ia32_mul_r64(const u8 dst[], const u8 src[], bool dstk, in emit_ia32_mul_r64() argument
1041 if (dstk) in emit_ia32_mul_r64()
1059 if (dstk) in emit_ia32_mul_r64()
1077 if (dstk) in emit_ia32_mul_r64()
1095 if (dstk) { in emit_ia32_mul_r64()
1113 bool dstk, u8 **pprog) in emit_ia32_mul_i64() argument
1122 if (dstk) in emit_ia32_mul_i64()
1134 if (dstk) in emit_ia32_mul_i64()
1145 if (dstk) in emit_ia32_mul_i64()
1155 if (dstk) { in emit_ia32_mul_i64()
1675 const bool dstk = insn->dst_reg != BPF_REG_AX; in do_jit() local
1697 emit_ia32_mov_i(dst_hi, 0, dstk, &prog); in do_jit()
1700 emit_ia32_mov_r64(is64, dst, src, dstk, sstk, in do_jit()
1706 dstk, &prog); in do_jit()
1741 src, dstk, sstk, &prog, in do_jit()
1746 imm32, dstk, &prog, in do_jit()
1755 emit_ia32_mul_r(dst_lo, src_lo, dstk, in do_jit()
1762 emit_ia32_mul_r(dst_lo, IA32_ECX, dstk, in do_jit()
1767 emit_ia32_mov_i(dst_hi, 0, dstk, &prog); in do_jit()
1776 dstk, sstk, &prog); in do_jit()
1783 IA32_ECX, dstk, false, in do_jit()
1788 emit_ia32_mov_i(dst_hi, 0, dstk, &prog); in do_jit()
1799 src_lo, dstk, sstk, &prog); in do_jit()
1806 IA32_ECX, dstk, false, in do_jit()
1811 emit_ia32_mov_i(dst_hi, 0, dstk, &prog); in do_jit()
1826 emit_ia32_shift_r(BPF_OP(code), dst_lo, IA32_ECX, dstk, in do_jit()
1829 emit_ia32_mov_i(dst_hi, 0, dstk, &prog); in do_jit()
1835 emit_ia32_lsh_i64(dst, imm32, dstk, &prog); in do_jit()
1841 emit_ia32_rsh_i64(dst, imm32, dstk, &prog); in do_jit()
1845 emit_ia32_lsh_r64(dst, src, dstk, sstk, &prog); in do_jit()
1849 emit_ia32_rsh_r64(dst, src, dstk, sstk, &prog); in do_jit()
1853 emit_ia32_arsh_r64(dst, src, dstk, sstk, &prog); in do_jit()
1859 emit_ia32_arsh_i64(dst, imm32, dstk, &prog); in do_jit()
1864 dst_lo, 0, dstk, &prog); in do_jit()
1866 emit_ia32_mov_i(dst_hi, 0, dstk, &prog); in do_jit()
1870 emit_ia32_neg64(dst, dstk, &prog); in do_jit()
1877 emit_ia32_mul_r64(dst, src, dstk, sstk, &prog); in do_jit()
1880 emit_ia32_mul_i64(dst, imm32, dstk, &prog); in do_jit()
1886 emit_ia32_to_le_r64(dst, imm32, dstk, &prog, in do_jit()
1891 emit_ia32_to_be_r64(dst, imm32, dstk, &prog, in do_jit()
1899 emit_ia32_mov_i(dst_lo, lo, dstk, &prog); in do_jit()
1900 emit_ia32_mov_i(dst_hi, hi, dstk, &prog); in do_jit()
1916 if (dstk) in do_jit()
1956 if (dstk) in do_jit()
2042 if (dstk) in do_jit()
2055 if (dstk) { in do_jit()
2069 if (dstk) in do_jit()
2162 u8 dreg_lo = dstk ? IA32_EAX : dst_lo; in do_jit()
2163 u8 dreg_hi = dstk ? IA32_EDX : dst_hi; in do_jit()
2167 if (dstk) { in do_jit()
2200 u8 dreg_lo = dstk ? IA32_EAX : dst_lo; in do_jit()
2201 u8 dreg_hi = dstk ? IA32_EDX : dst_hi; in do_jit()
2205 if (dstk) { in do_jit()
2238 if (dstk) { in do_jit()
2283 if (dstk) { in do_jit()
2333 u8 dreg_lo = dstk ? IA32_EAX : dst_lo; in do_jit()
2334 u8 dreg_hi = dstk ? IA32_EDX : dst_hi; in do_jit()
2339 if (dstk) { in do_jit()
2380 u8 dreg_lo = dstk ? IA32_EAX : dst_lo; in do_jit()
2381 u8 dreg_hi = dstk ? IA32_EDX : dst_hi; in do_jit()
2386 if (dstk) { in do_jit()