Lines Matching defs:dstk

206 static inline void emit_ia32_mov_i(const u8 dst, const u32 val, bool dstk,
212 if (dstk) {
234 static inline void emit_ia32_mov_r(const u8 dst, const u8 src, bool dstk,
244 if (dstk)
256 const u8 src[], bool dstk,
260 emit_ia32_mov_r(dst_lo, src_lo, dstk, sstk, pprog);
263 emit_ia32_mov_r(dst_hi, src_hi, dstk, sstk, pprog);
266 emit_ia32_mov_i(dst_hi, 0, dstk, pprog);
271 const u32 val, bool dstk, u8 **pprog)
277 emit_ia32_mov_i(dst_lo, val, dstk, pprog);
278 emit_ia32_mov_i(dst_hi, hi, dstk, pprog);
285 static inline void emit_ia32_mul_r(const u8 dst, const u8 src, bool dstk,
296 if (dstk)
306 if (dstk)
318 bool dstk, u8 **pprog,
323 u8 dreg_lo = dstk ? IA32_EAX : dst_lo;
324 u8 dreg_hi = dstk ? IA32_EDX : dst_hi;
326 if (dstk && val != 64) {
354 if (dstk && val != 64) {
366 bool dstk, u8 **pprog,
371 u8 dreg_lo = dstk ? IA32_EAX : dst_lo;
372 u8 dreg_hi = dstk ? IA32_EDX : dst_hi;
374 if (dstk) {
420 if (dstk) {
436 bool dstk, bool sstk, u8 **pprog)
449 if (dstk)
463 if (dstk)
469 if (dstk)
483 bool dstk, bool sstk, u8 **pprog)
487 u8 dreg = dstk ? IA32_EAX : dst;
490 if (dstk)
513 if (dstk)
524 const u8 dst, const u8 src, bool dstk,
530 u8 dreg = dstk ? IA32_EDX : dst;
536 if (dstk)
569 if (dstk)
579 bool dstk, bool sstk,
584 emit_ia32_alu_r(is64, false, op, dst_lo, src_lo, dstk, sstk, &prog);
586 emit_ia32_alu_r(is64, true, op, dst_hi, src_hi, dstk, sstk,
589 emit_ia32_mov_i(dst_hi, 0, dstk, &prog);
598 const u8 dst, const s32 val, bool dstk,
603 u8 dreg = dstk ? IA32_EAX : dst;
606 if (dstk)
669 if (dstk)
679 bool dstk, u8 **pprog,
688 emit_ia32_alu_i(is64, false, op, dst_lo, val, dstk, &prog);
690 emit_ia32_alu_i(is64, true, op, dst_hi, hi, dstk, &prog);
692 emit_ia32_mov_i(dst_hi, 0, dstk, &prog);
698 static inline void emit_ia32_neg64(const u8 dst[], bool dstk, u8 **pprog)
702 u8 dreg_lo = dstk ? IA32_EAX : dst_lo;
703 u8 dreg_hi = dstk ? IA32_EDX : dst_hi;
705 if (dstk) {
719 if (dstk) {
732 bool dstk, bool sstk, u8 **pprog)
736 u8 dreg_lo = dstk ? IA32_EAX : dst_lo;
737 u8 dreg_hi = dstk ? IA32_EDX : dst_hi;
739 if (dstk) {
771 if (dstk) {
785 bool dstk, bool sstk, u8 **pprog)
789 u8 dreg_lo = dstk ? IA32_EAX : dst_lo;
790 u8 dreg_hi = dstk ? IA32_EDX : dst_hi;
792 if (dstk) {
824 if (dstk) {
837 static inline void emit_ia32_rsh_r64(const u8 dst[], const u8 src[], bool dstk,
842 u8 dreg_lo = dstk ? IA32_EAX : dst_lo;
843 u8 dreg_hi = dstk ? IA32_EDX : dst_hi;
845 if (dstk) {
877 if (dstk) {
891 bool dstk, u8 **pprog)
895 u8 dreg_lo = dstk ? IA32_EAX : dst_lo;
896 u8 dreg_hi = dstk ? IA32_EDX : dst_hi;
898 if (dstk) {
926 if (dstk) {
939 bool dstk, u8 **pprog)
943 u8 dreg_lo = dstk ? IA32_EAX : dst_lo;
944 u8 dreg_hi = dstk ? IA32_EDX : dst_hi;
946 if (dstk) {
975 if (dstk) {
988 bool dstk, u8 **pprog)
992 u8 dreg_lo = dstk ? IA32_EAX : dst_lo;
993 u8 dreg_hi = dstk ? IA32_EDX : dst_hi;
995 if (dstk) {
1024 if (dstk) {
1035 static inline void emit_ia32_mul_r64(const u8 dst[], const u8 src[], bool dstk,
1041 if (dstk)
1059 if (dstk)
1077 if (dstk)
1095 if (dstk) {
1113 bool dstk, u8 **pprog)
1122 if (dstk)
1134 if (dstk)
1145 if (dstk)
1155 if (dstk) {
1494 const bool dstk = insn->dst_reg != BPF_REG_AX;
1516 emit_ia32_mov_i(dst_hi, 0, dstk, &prog);
1519 emit_ia32_mov_r64(is64, dst, src, dstk, sstk,
1525 dstk, &prog);
1560 src, dstk, sstk, &prog,
1565 imm32, dstk, &prog,
1574 emit_ia32_mul_r(dst_lo, src_lo, dstk,
1581 emit_ia32_mul_r(dst_lo, IA32_ECX, dstk,
1586 emit_ia32_mov_i(dst_hi, 0, dstk, &prog);
1595 dstk, sstk, &prog);
1602 IA32_ECX, dstk, false,
1607 emit_ia32_mov_i(dst_hi, 0, dstk, &prog);
1618 src_lo, dstk, sstk, &prog);
1625 IA32_ECX, dstk, false,
1630 emit_ia32_mov_i(dst_hi, 0, dstk, &prog);
1645 emit_ia32_shift_r(BPF_OP(code), dst_lo, IA32_ECX, dstk,
1648 emit_ia32_mov_i(dst_hi, 0, dstk, &prog);
1654 emit_ia32_lsh_i64(dst, imm32, dstk, &prog);
1660 emit_ia32_rsh_i64(dst, imm32, dstk, &prog);
1664 emit_ia32_lsh_r64(dst, src, dstk, sstk, &prog);
1668 emit_ia32_rsh_r64(dst, src, dstk, sstk, &prog);
1672 emit_ia32_arsh_r64(dst, src, dstk, sstk, &prog);
1678 emit_ia32_arsh_i64(dst, imm32, dstk, &prog);
1683 dst_lo, 0, dstk, &prog);
1685 emit_ia32_mov_i(dst_hi, 0, dstk, &prog);
1689 emit_ia32_neg64(dst, dstk, &prog);
1696 emit_ia32_mul_r64(dst, src, dstk, sstk, &prog);
1699 emit_ia32_mul_i64(dst, imm32, dstk, &prog);
1705 emit_ia32_to_le_r64(dst, imm32, dstk, &prog,
1710 emit_ia32_to_be_r64(dst, imm32, dstk, &prog,
1718 emit_ia32_mov_i(dst_lo, lo, dstk, &prog);
1719 emit_ia32_mov_i(dst_hi, hi, dstk, &prog);
1735 if (dstk)
1775 if (dstk)
1861 if (dstk)
1874 if (dstk) {
1888 if (dstk)
1969 u8 dreg_lo = dstk ? IA32_EAX : dst_lo;
1970 u8 dreg_hi = dstk ? IA32_EDX : dst_hi;
1974 if (dstk) {
2007 u8 dreg_lo = dstk ? IA32_EAX : dst_lo;
2008 u8 dreg_hi = dstk ? IA32_EDX : dst_hi;
2012 if (dstk) {
2045 if (dstk) {
2090 if (dstk) {
2140 u8 dreg_lo = dstk ? IA32_EAX : dst_lo;
2141 u8 dreg_hi = dstk ? IA32_EDX : dst_hi;
2146 if (dstk) {
2187 u8 dreg_lo = dstk ? IA32_EAX : dst_lo;
2188 u8 dreg_hi = dstk ? IA32_EDX : dst_hi;
2193 if (dstk) {