Lines Matching refs:src

1276 	sljit_s32 src, sljit_sw srcw)  in sljit_emit_return_to()  argument
1281 CHECK(check_sljit_emit_return_to(compiler, src, srcw)); in sljit_emit_return_to()
1283 if (src & SLJIT_MEM) { in sljit_emit_return_to()
1284 ADJUST_LOCAL_OFFSET(src, srcw); in sljit_emit_return_to()
1285 FAIL_IF(emit_op_mem(compiler, WORD_DATA | LOAD_DATA, DR(PIC_ADDR_REG), src, srcw)); in sljit_emit_return_to()
1286 src = PIC_ADDR_REG; in sljit_emit_return_to()
1288 …} else if (src >= SLJIT_FIRST_SAVED_REG && src <= (SLJIT_S0 - SLJIT_KEPT_SAVEDS_COUNT(compiler->op… in sljit_emit_return_to()
1289 FAIL_IF(push_inst(compiler, ADDU_W | S(src) | TA(0) | D(PIC_ADDR_REG), DR(PIC_ADDR_REG))); in sljit_emit_return_to()
1290 src = PIC_ADDR_REG; in sljit_emit_return_to()
1296 if (src != SLJIT_IMM) { in sljit_emit_return_to()
1297 FAIL_IF(push_inst(compiler, JR | S(src), UNMOVABLE_INS)); in sljit_emit_return_to()
1305 return sljit_emit_ijump(compiler, SLJIT_JUMP, src, srcw); in sljit_emit_return_to()
1564 … sljit_s32 emit_clz_ctz(struct sljit_compiler *compiler, sljit_s32 op, sljit_s32 dst, sljit_sw src) in emit_clz_ctz() argument
1574 if (src != TMP_REG2) in emit_clz_ctz()
1575 FAIL_IF(push_inst(compiler, SELECT_OP(DADDU, ADDU) | S(src) | TA(0) | D(TMP_REG2), DR(TMP_REG2))); in emit_clz_ctz()
1613 …atic sljit_s32 emit_rev(struct sljit_compiler *compiler, sljit_s32 op, sljit_s32 dst, sljit_sw src) in emit_rev() argument
1623 FAIL_IF(push_inst(compiler, DSBH | T(src) | D(dst), DR(dst))); in emit_rev()
1626 if (op != SLJIT_REV && src != TMP_REG2) { in emit_rev()
1627 FAIL_IF(push_inst(compiler, SLL | T(src) | D(TMP_REG1), DR(TMP_REG1))); in emit_rev()
1628 src = TMP_REG1; in emit_rev()
1631 FAIL_IF(push_inst(compiler, WSBH | T(src) | D(dst), DR(dst))); in emit_rev()
1640 FAIL_IF(push_inst(compiler, DSRL32 | T(src) | D(TMP_REG1) | SH_IMM(0), DR(TMP_REG1))); in emit_rev()
1642 FAIL_IF(push_inst(compiler, DSLL32 | T(src) | D(dst) | SH_IMM(0), DR(dst))); in emit_rev()
1662 if (op != SLJIT_REV && src != TMP_REG2) { in emit_rev()
1663 FAIL_IF(push_inst(compiler, SLL | T(src) | D(TMP_REG2) | SH_IMM(0), DR(TMP_REG2))); in emit_rev()
1664 src = TMP_REG2; in emit_rev()
1668 FAIL_IF(push_inst(compiler, SRL | T(src) | D(TMP_REG1) | SH_IMM(16), DR(TMP_REG1))); in emit_rev()
1670 FAIL_IF(push_inst(compiler, SLL | T(src) | D(dst) | SH_IMM(16), DR(dst))); in emit_rev()
1690 …ic sljit_s32 emit_rev16(struct sljit_compiler *compiler, sljit_s32 op, sljit_s32 dst, sljit_sw src) in emit_rev16() argument
1694 FAIL_IF(push_inst(compiler, WSBH | T(src) | D(dst), DR(dst))); in emit_rev16()
1696 FAIL_IF(push_inst(compiler, DSBH | T(src) | D(dst), DR(dst))); in emit_rev16()
1703 …FAIL_IF(push_inst(compiler, SELECT_OP(DSRL, SRL) | T(src) | D(TMP_REG1) | SH_IMM(8), DR(TMP_REG1))… in emit_rev16()
1704 FAIL_IF(push_inst(compiler, SELECT_OP(DSLL32, SLL) | T(src) | D(dst) | SH_IMM(24), DR(dst))); in emit_rev16()
2490 sljit_s32 src, sljit_sw srcw) in emit_prefetch() argument
2492 if (!(src & OFFS_REG_MASK)) { in emit_prefetch()
2494 return push_inst(compiler, PREF | S(src & REG_MASK) | IMM(srcw), MOVABLE_INS); in emit_prefetch()
2497 return push_inst(compiler, PREFX | S(src & REG_MASK) | T(TMP_REG1), MOVABLE_INS); in emit_prefetch()
2503 FAIL_IF(push_inst(compiler, SLL_W | T(OFFS_REG(src)) | D(TMP_REG1) | SH_IMM(srcw), DR(TMP_REG1))); in emit_prefetch()
2504 return push_inst(compiler, PREFX | S(src & REG_MASK) | T(TMP_REG1), MOVABLE_INS); in emit_prefetch()
2507 return push_inst(compiler, PREFX | S(src & REG_MASK) | T(OFFS_REG(src)), MOVABLE_INS); in emit_prefetch()
2513 sljit_s32 src, sljit_sw srcw) in sljit_emit_op1() argument
2518 CHECK(check_sljit_emit_op1(compiler, op, dst, dstw, src, srcw)); in sljit_emit_op1()
2520 ADJUST_LOCAL_OFFSET(src, srcw); in sljit_emit_op1()
2535 return emit_op(compiler, SLJIT_MOV, WORD_DATA | MOVE_OP, dst, dstw, TMP_REG1, 0, src, srcw); in sljit_emit_op1()
2539 …return emit_op(compiler, SLJIT_MOV_U32, INT_DATA | MOVE_OP, dst, dstw, TMP_REG1, 0, src, (src == S… in sljit_emit_op1()
2543 …LJIT_MOV_S32, INT_DATA | SIGNED_DATA | MOVE_OP, dst, dstw, TMP_REG1, 0, src, (src == SLJIT_IMM) ? … in sljit_emit_op1()
2547 …return emit_op(compiler, op, BYTE_DATA | MOVE_OP, dst, dstw, TMP_REG1, 0, src, (src == SLJIT_IMM) … in sljit_emit_op1()
2550 …return emit_op(compiler, op, BYTE_DATA | SIGNED_DATA | MOVE_OP, dst, dstw, TMP_REG1, 0, src, (src in sljit_emit_op1()
2553 …return emit_op(compiler, op, HALF_DATA | MOVE_OP, dst, dstw, TMP_REG1, 0, src, (src == SLJIT_IMM) … in sljit_emit_op1()
2556 …return emit_op(compiler, op, HALF_DATA | SIGNED_DATA | MOVE_OP, dst, dstw, TMP_REG1, 0, src, (src in sljit_emit_op1()
2561 return emit_op(compiler, op, flags, dst, dstw, TMP_REG1, 0, src, srcw); in sljit_emit_op1()
2565 return emit_op(compiler, op, HALF_DATA, dst, dstw, TMP_REG1, 0, src, srcw); in sljit_emit_op1()
2569 return emit_op(compiler, op | SLJIT_32, INT_DATA, dst, dstw, TMP_REG1, 0, src, srcw); in sljit_emit_op1()
2752 sljit_s32 src, sljit_sw srcw) in sljit_emit_op_src() argument
2755 CHECK(check_sljit_emit_op_src(compiler, op, src, srcw)); in sljit_emit_op_src()
2756 ADJUST_LOCAL_OFFSET(src, srcw); in sljit_emit_op_src()
2760 if (FAST_IS_REG(src)) in sljit_emit_op_src()
2761 FAIL_IF(push_inst(compiler, ADDU_W | S(src) | TA(0) | DA(RETURN_ADDR_REG), RETURN_ADDR_REG)); in sljit_emit_op_src()
2763 FAIL_IF(emit_op_mem(compiler, WORD_DATA | LOAD_DATA, RETURN_ADDR_REG, src, srcw)); in sljit_emit_op_src()
2774 return emit_prefetch(compiler, src, srcw); in sljit_emit_op_src()
2846 sljit_s32 src, sljit_sw srcw) in sljit_emit_fop1_conv_sw_from_f64() argument
2854 if (src & SLJIT_MEM) { in sljit_emit_fop1_conv_sw_from_f64()
2855 FAIL_IF(emit_op_mem2(compiler, FLOAT_DATA(op) | LOAD_DATA, FR(TMP_FREG1), src, srcw, dst, dstw)); in sljit_emit_fop1_conv_sw_from_f64()
2856 src = TMP_FREG1; in sljit_emit_fop1_conv_sw_from_f64()
2859 …FAIL_IF(push_inst(compiler, (TRUNC_W_S ^ (flags >> 19)) | FMT(op) | FS(src) | FD(TMP_FREG1), MOVAB… in sljit_emit_fop1_conv_sw_from_f64()
2874 sljit_s32 src, sljit_sw srcw) in sljit_emit_fop1_conv_f64_from_sw() argument
2883 if (src & SLJIT_MEM) in sljit_emit_fop1_conv_f64_from_sw()
2884 …2(compiler, (flags ? DOUBLE_DATA : SINGLE_DATA) | LOAD_DATA, FR(TMP_FREG1), src, srcw, dst, dstw)); in sljit_emit_fop1_conv_f64_from_sw()
2886 if (src == SLJIT_IMM) { in sljit_emit_fop1_conv_f64_from_sw()
2892 src = TMP_REG1; in sljit_emit_fop1_conv_f64_from_sw()
2895 FAIL_IF(push_inst(compiler, MTC1 | flags | T(src) | FS(TMP_FREG1), MOVABLE_INS)); in sljit_emit_fop1_conv_f64_from_sw()
2910 sljit_s32 src, sljit_sw srcw) in sljit_emit_fop1_conv_f64_from_uw() argument
2919 if (src & SLJIT_MEM) { in sljit_emit_fop1_conv_f64_from_uw()
2920 …= SLJIT_CONV_F64_FROM_UW ? WORD_DATA : INT_DATA) | LOAD_DATA, DR(TMP_REG1), src, srcw, dst, dstw)); in sljit_emit_fop1_conv_f64_from_uw()
2921 src = TMP_REG1; in sljit_emit_fop1_conv_f64_from_uw()
2922 } else if (src == SLJIT_IMM) { in sljit_emit_fop1_conv_f64_from_uw()
2928 src = TMP_REG1; in sljit_emit_fop1_conv_f64_from_uw()
2933 if (src != TMP_REG1) { in sljit_emit_fop1_conv_f64_from_uw()
2934 FAIL_IF(push_inst(compiler, DSLL32 | T(src) | D(TMP_REG1) | SH_IMM(0), DR(TMP_REG1))); in sljit_emit_fop1_conv_f64_from_uw()
2951 FAIL_IF(push_inst(compiler, SLL | T(src) | D(TMP_REG2) | SH_IMM(1), DR(TMP_REG2))); in sljit_emit_fop1_conv_f64_from_uw()
2962 FAIL_IF(push_inst(compiler, BGEZ | S(src) | 5, UNMOVABLE_INS)); in sljit_emit_fop1_conv_f64_from_uw()
2964 FAIL_IF(push_inst(compiler, BGEZ | S(src) | 4, UNMOVABLE_INS)); in sljit_emit_fop1_conv_f64_from_uw()
2991 FAIL_IF(push_inst(compiler, BLTZ | S(src) | 5, UNMOVABLE_INS)); in sljit_emit_fop1_conv_f64_from_uw()
2993 FAIL_IF(push_inst(compiler, BLTZ | S(src) | 4, UNMOVABLE_INS)); in sljit_emit_fop1_conv_f64_from_uw()
2995 FAIL_IF(push_inst(compiler, ANDI | S(src) | T(TMP_REG2) | IMM(1), DR(TMP_REG2))); in sljit_emit_fop1_conv_f64_from_uw()
2997 FAIL_IF(push_inst(compiler, MTC1 | flags | T(src) | FS(TMP_FREG1), MOVABLE_INS)); in sljit_emit_fop1_conv_f64_from_uw()
3011 FAIL_IF(push_inst(compiler, DSRL | T(src) | D(TMP_REG1) | SH_IMM(1), DR(TMP_REG1))); in sljit_emit_fop1_conv_f64_from_uw()
3013 FAIL_IF(push_inst(compiler, SRL | T(src) | D(TMP_REG1) | SH_IMM(1), DR(TMP_REG1))); in sljit_emit_fop1_conv_f64_from_uw()
3082 sljit_s32 src, sljit_sw srcw) in sljit_emit_fop1() argument
3091 SELECT_FOP1_OPERATION_WITH_CHECKS(compiler, op, dst, dstw, src, srcw); in sljit_emit_fop1()
3098 if (src & SLJIT_MEM) { in sljit_emit_fop1()
3099 FAIL_IF(emit_op_mem2(compiler, FLOAT_DATA(op) | LOAD_DATA, FR(dst_r), src, srcw, dst, dstw)); in sljit_emit_fop1()
3100 src = dst_r; in sljit_emit_fop1()
3105 if (src != dst_r) { in sljit_emit_fop1()
3107 FAIL_IF(push_inst(compiler, MOV_fmt(FMT(op)) | FS(src) | FD(dst_r), MOVABLE_INS)); in sljit_emit_fop1()
3109 dst_r = src; in sljit_emit_fop1()
3113 FAIL_IF(push_inst(compiler, NEG_S | FMT(op) | FS(src) | FD(dst_r), MOVABLE_INS)); in sljit_emit_fop1()
3116 FAIL_IF(push_inst(compiler, ABS_S | FMT(op) | FS(src) | FD(dst_r), MOVABLE_INS)); in sljit_emit_fop1()
3120 …FAIL_IF(push_inst(compiler, CVT_S_S | (sljit_ins)((op & SLJIT_32) ? 1 : (1 << 21)) | FS(src) | FD(… in sljit_emit_fop1()
3254 #define BR_Z(src) \ argument
3255 inst = BEQ | SA(src) | TA(0) | BRANCH_LENGTH; \
3257 delay_check = src;
3259 #define BR_NZ(src) \ argument
3260 inst = BNE | SA(src) | TA(0) | BRANCH_LENGTH; \
3262 delay_check = src;
3540 …s32 sljit_emit_ijump(struct sljit_compiler *compiler, sljit_s32 type, sljit_s32 src, sljit_sw srcw) in sljit_emit_ijump() argument
3545 CHECK(check_sljit_emit_ijump(compiler, type, src, srcw)); in sljit_emit_ijump()
3547 if (src == SLJIT_IMM) { in sljit_emit_ijump()
3556 src = TMP_REG2; in sljit_emit_ijump()
3557 } else if (src & SLJIT_MEM) { in sljit_emit_ijump()
3558 ADJUST_LOCAL_OFFSET(src, srcw); in sljit_emit_ijump()
3559 FAIL_IF(emit_op_mem(compiler, WORD_DATA | LOAD_DATA, DR(TMP_REG2), src, srcw)); in sljit_emit_ijump()
3560 src = TMP_REG2; in sljit_emit_ijump()
3564 FAIL_IF(push_inst(compiler, JR | S(src), UNMOVABLE_INS)); in sljit_emit_ijump()
3566 FAIL_IF(push_inst(compiler, JALR | S(src) | DA(RETURN_ADDR_REG), UNMOVABLE_INS)); in sljit_emit_ijump()