Lines Matching refs:dst
430 const u8 dst = bpf2a64[insn->dst_reg];
458 /* dst = src */
461 emit(A64_MOV(is64, dst, src), ctx);
463 /* dst = dst OP src */
466 emit(A64_ADD(is64, dst, dst, src), ctx);
470 emit(A64_SUB(is64, dst, dst, src), ctx);
474 emit(A64_AND(is64, dst, dst, src), ctx);
478 emit(A64_ORR(is64, dst, dst, src), ctx);
482 emit(A64_EOR(is64, dst, dst, src), ctx);
486 emit(A64_MUL(is64, dst, dst, src), ctx);
494 emit(A64_UDIV(is64, dst, dst, src), ctx);
497 emit(A64_UDIV(is64, tmp, dst, src), ctx);
498 emit(A64_MSUB(is64, dst, dst, tmp, src), ctx);
504 emit(A64_LSLV(is64, dst, dst, src), ctx);
508 emit(A64_LSRV(is64, dst, dst, src), ctx);
512 emit(A64_ASRV(is64, dst, dst, src), ctx);
514 /* dst = -dst */
517 emit(A64_NEG(is64, dst, dst), ctx);
519 /* dst = BSWAP##imm(dst) */
531 emit(A64_REV16(is64, dst, dst), ctx);
533 emit(A64_UXTH(is64, dst, dst), ctx);
536 emit(A64_REV32(is64, dst, dst), ctx);
540 emit(A64_REV64(dst, dst), ctx);
548 emit(A64_UXTH(is64, dst, dst), ctx);
552 emit(A64_UXTW(is64, dst, dst), ctx);
559 /* dst = imm */
562 emit_a64_mov_i(is64, dst, imm, ctx);
564 /* dst = dst OP imm */
568 emit(A64_ADD_I(is64, dst, dst, imm), ctx);
570 emit(A64_SUB_I(is64, dst, dst, -imm), ctx);
573 emit(A64_ADD(is64, dst, dst, tmp), ctx);
579 emit(A64_SUB_I(is64, dst, dst, imm), ctx);
581 emit(A64_ADD_I(is64, dst, dst, -imm), ctx);
584 emit(A64_SUB(is64, dst, dst, tmp), ctx);
589 a64_insn = A64_AND_I(is64, dst, dst, imm);
594 emit(A64_AND(is64, dst, dst, tmp), ctx);
599 a64_insn = A64_ORR_I(is64, dst, dst, imm);
604 emit(A64_ORR(is64, dst, dst, tmp), ctx);
609 a64_insn = A64_EOR_I(is64, dst, dst, imm);
614 emit(A64_EOR(is64, dst, dst, tmp), ctx);
620 emit(A64_MUL(is64, dst, dst, tmp), ctx);
625 emit(A64_UDIV(is64, dst, dst, tmp), ctx);
630 emit(A64_UDIV(is64, tmp, dst, tmp2), ctx);
631 emit(A64_MSUB(is64, dst, dst, tmp, tmp2), ctx);
635 emit(A64_LSL(is64, dst, dst, imm), ctx);
639 emit(A64_LSR(is64, dst, dst, imm), ctx);
643 emit(A64_ASR(is64, dst, dst, imm), ctx);
652 /* IF (dst COND src) JUMP off */
673 emit(A64_CMP(is64, dst, src), ctx);
716 emit(A64_TST(is64, dst, src), ctx);
718 /* IF (dst COND imm) JUMP off */
740 emit(A64_CMP_I(is64, dst, imm), ctx);
742 emit(A64_CMN_I(is64, dst, -imm), ctx);
745 emit(A64_CMP(is64, dst, tmp), ctx);
750 a64_insn = A64_TST_I(is64, dst, imm);
755 emit(A64_TST(is64, dst, tmp), ctx);
790 /* dst = imm64 */
797 emit_a64_mov_i64(dst, imm64, ctx);
802 /* LDX: dst = *(size *)(src + off) */
814 emit(A64_LDR32(dst, src, tmp), ctx);
817 emit(A64_LDRH(dst, src, tmp), ctx);
820 emit(A64_LDRB(dst, src, tmp), ctx);
823 emit(A64_LDR64(dst, src, tmp), ctx);
827 ret = add_exception_handler(insn, ctx, dst);
845 /* ST: *(size *)(dst + off) = imm */
855 emit(A64_STR32(tmp, dst, tmp2), ctx);
858 emit(A64_STRH(tmp, dst, tmp2), ctx);
861 emit(A64_STRB(tmp, dst, tmp2), ctx);
864 emit(A64_STR64(tmp, dst, tmp2), ctx);
869 /* STX: *(size *)(dst + off) = src */
877 emit(A64_STR32(src, dst, tmp), ctx);
880 emit(A64_STRH(src, dst, tmp), ctx);
883 emit(A64_STRB(src, dst, tmp), ctx);
886 emit(A64_STR64(src, dst, tmp), ctx);
891 /* STX XADD: lock *(u32 *)(dst + off) += src */
893 /* STX XADD: lock *(u64 *)(dst + off) += src */
896 reg = dst;
899 emit(A64_ADD(1, tmp, tmp, dst), ctx);