Lines Matching refs:rn
363 static inline void emit_udivmod(u8 rd, u8 rm, u8 rn, struct jit_ctx *ctx, u8 op) in emit_udivmod() argument
371 emit(ARM_CMP_I(rn, 0), ctx); in emit_udivmod()
378 emit(ARM_UDIV(rd, rm, rn), ctx); in emit_udivmod()
380 emit(ARM_UDIV(ARM_IP, rm, rn), ctx); in emit_udivmod()
381 emit(ARM_MLS(rd, rn, ARM_IP, rm), ctx); in emit_udivmod()
395 if (rn != ARM_R1) { in emit_udivmod()
397 emit(ARM_MOV_R(ARM_R1, rn), ctx); in emit_udivmod()
414 if (rn != ARM_R1) in emit_udivmod()
544 u8 rn = sstk ? tmp[1] : src; in emit_a32_alu_r() local
547 emit(ARM_LDR_I(rn, ARM_SP, STACK_VAR(src)), ctx); in emit_a32_alu_r()
552 emit_alu_r(tmp[0], rn, is64, hi, op, ctx); in emit_a32_alu_r()
555 emit_alu_r(dst, rn, is64, hi, op, ctx); in emit_a32_alu_r()
858 u8 rn = sstk ? tmp2[0] : src_hi; in emit_a32_mul_r64() local
866 emit(ARM_LDR_I(rn, ARM_SP, STACK_VAR(src_hi)), ctx); in emit_a32_mul_r64()
870 emit(ARM_MUL(ARM_IP, rd, rn), ctx); in emit_a32_mul_r64()
965 const u8 rn, struct jit_ctx *ctx, u8 op) { in emit_ar_r() argument
968 emit(ARM_AND_R(ARM_IP, rt, rn), ctx); in emit_ar_r()
979 _emit(ARM_COND_EQ, ARM_CMP_R(rt, rn), ctx); in emit_ar_r()
983 emit(ARM_CMP_R(rn, rt), ctx); in emit_ar_r()
988 emit(ARM_CMP_R(rt, rn), ctx); in emit_ar_r()
1074 static inline void emit_rev16(const u8 rd, const u8 rn, struct jit_ctx *ctx) in emit_rev16() argument
1079 emit(ARM_AND_I(tmp2[1], rn, 0xff), ctx); in emit_rev16()
1080 emit(ARM_MOV_SI(tmp2[0], rn, SRTYPE_LSR, 8), ctx); in emit_rev16()
1084 emit(ARM_REV16(rd, rn), ctx); in emit_rev16()
1089 static inline void emit_rev32(const u8 rd, const u8 rn, struct jit_ctx *ctx) in emit_rev32() argument
1094 emit(ARM_AND_I(tmp2[1], rn, 0xff), ctx); in emit_rev32()
1095 emit(ARM_MOV_SI(tmp2[0], rn, SRTYPE_LSR, 24), ctx); in emit_rev32()
1098 emit(ARM_MOV_SI(tmp2[1], rn, SRTYPE_LSR, 8), ctx); in emit_rev32()
1100 emit(ARM_MOV_SI(tmp2[0], rn, SRTYPE_LSR, 16), ctx); in emit_rev32()
1107 emit(ARM_REV(rd, rn), ctx); in emit_rev32()
1206 u8 rd, rt, rm, rn; in build_insn() local
1458 rn = sstk ? tmp2[1] : src_lo; in build_insn()
1460 emit(ARM_LDR_I(rn, ARM_SP, STACK_VAR(src_lo)), ctx); in build_insn()
1461 emit_ldx_r(dst, rn, dstk, off, ctx, BPF_SIZE(code)); in build_insn()
1574 rn = sstk ? tmp2[1] : src_lo; in build_insn()
1577 emit(ARM_LDR_I(rn, ARM_SP, STACK_VAR(src_lo)), ctx); in build_insn()
1583 emit_str_r(dst_lo, rn, dstk, off, ctx, BPF_W); in build_insn()
1586 emit_str_r(dst_lo, rn, dstk, off, ctx, sz); in build_insn()
1614 rn = sstk ? tmp2[1] : src_lo; in build_insn()
1616 emit(ARM_LDR_I(rn, ARM_SP, STACK_VAR(src_lo)), ctx); in build_insn()
1645 rn = tmp2[1]; in build_insn()
1658 emit_ar_r(rd, rt, rm, rn, ctx, BPF_OP(code)); in build_insn()