Lines Matching refs:dst
382 #define PB3(opcode, dst, srca, srcb) \ argument
383 push_3_buffer(compiler, opcode, dst, srca, srcb, __LINE__)
385 #define PB2(opcode, dst, src) \ argument
386 push_2_buffer(compiler, opcode, dst, src, __LINE__)
391 #define ADD(dst, srca, srcb) \ argument
392 push_3_buffer(compiler, TILEGX_OPC_ADD, dst, srca, srcb, __LINE__)
394 #define SUB(dst, srca, srcb) \ argument
395 push_3_buffer(compiler, TILEGX_OPC_SUB, dst, srca, srcb, __LINE__)
397 #define MUL(dst, srca, srcb) \ argument
398 push_3_buffer(compiler, TILEGX_OPC_MULX, dst, srca, srcb, __LINE__)
400 #define NOR(dst, srca, srcb) \ argument
401 push_3_buffer(compiler, TILEGX_OPC_NOR, dst, srca, srcb, __LINE__)
403 #define OR(dst, srca, srcb) \ argument
404 push_3_buffer(compiler, TILEGX_OPC_OR, dst, srca, srcb, __LINE__)
406 #define XOR(dst, srca, srcb) \ argument
407 push_3_buffer(compiler, TILEGX_OPC_XOR, dst, srca, srcb, __LINE__)
409 #define AND(dst, srca, srcb) \ argument
410 push_3_buffer(compiler, TILEGX_OPC_AND, dst, srca, srcb, __LINE__)
412 #define CLZ(dst, src) \ argument
413 push_2_buffer(compiler, TILEGX_OPC_CLZ, dst, src, __LINE__)
415 #define SHLI(dst, srca, srcb) \ argument
416 push_3_buffer(compiler, TILEGX_OPC_SHLI, dst, srca, srcb, __LINE__)
418 #define SHRUI(dst, srca, imm) \ argument
419 push_3_buffer(compiler, TILEGX_OPC_SHRUI, dst, srca, imm, __LINE__)
421 #define XORI(dst, srca, imm) \ argument
422 push_3_buffer(compiler, TILEGX_OPC_XORI, dst, srca, imm, __LINE__)
424 #define ORI(dst, srca, imm) \ argument
425 push_3_buffer(compiler, TILEGX_OPC_ORI, dst, srca, imm, __LINE__)
427 #define CMPLTU(dst, srca, srcb) \ argument
428 push_3_buffer(compiler, TILEGX_OPC_CMPLTU, dst, srca, srcb, __LINE__)
430 #define CMPLTS(dst, srca, srcb) \ argument
431 push_3_buffer(compiler, TILEGX_OPC_CMPLTS, dst, srca, srcb, __LINE__)
433 #define CMPLTUI(dst, srca, imm) \ argument
434 push_3_buffer(compiler, TILEGX_OPC_CMPLTUI, dst, srca, imm, __LINE__)
436 #define CMOVNEZ(dst, srca, srcb) \ argument
437 push_3_buffer(compiler, TILEGX_OPC_CMOVNEZ, dst, srca, srcb, __LINE__)
439 #define CMOVEQZ(dst, srca, srcb) \ argument
440 push_3_buffer(compiler, TILEGX_OPC_CMOVEQZ, dst, srca, srcb, __LINE__)
442 #define ADDLI(dst, srca, srcb) \ argument
443 push_3_buffer(compiler, TILEGX_OPC_ADDLI, dst, srca, srcb, __LINE__)
445 #define SHL16INSLI(dst, srca, srcb) \ argument
446 push_3_buffer(compiler, TILEGX_OPC_SHL16INSLI, dst, srca, srcb, __LINE__)
448 #define LD_ADD(dst, addr, adjust) \ argument
449 push_3_buffer(compiler, TILEGX_OPC_LD_ADD, dst, addr, adjust, __LINE__)
454 #define LD(dst, addr) \ argument
455 push_2_buffer(compiler, TILEGX_OPC_LD, dst, addr, __LINE__)
457 #define BFEXTU(dst, src, start, end) \ argument
458 push_4_buffer(compiler, TILEGX_OPC_BFEXTU, dst, src, start, end, __LINE__)
460 #define BFEXTS(dst, src, start, end) \ argument
461 push_4_buffer(compiler, TILEGX_OPC_BFEXTS, dst, src, start, end, __LINE__)
1550 …BUTE sljit_s32 sljit_emit_fast_enter(struct sljit_compiler *compiler, sljit_s32 dst, sljit_sw dstw) in sljit_emit_fast_enter() argument
1553 CHECK(check_sljit_emit_fast_enter(compiler, dst, dstw)); in sljit_emit_fast_enter()
1554 ADJUST_LOCAL_OFFSET(dst, dstw); in sljit_emit_fast_enter()
1557 if (dst == SLJIT_UNUSED) in sljit_emit_fast_enter()
1560 if (FAST_IS_REG(dst)) in sljit_emit_fast_enter()
1561 return ADD(reg_map[dst], RA, ZERO); in sljit_emit_fast_enter()
1564 return emit_op_mem(compiler, WORD_DATA, RA, dst, dstw); in sljit_emit_fast_enter()
1567 …(struct sljit_compiler *compiler, sljit_s32 op, sljit_s32 flags, sljit_s32 dst, sljit_s32 src1, sl… in emit_single_op() argument
1575 if (dst != src2) in emit_single_op()
1576 return ADD(reg_map[dst], reg_map[src2], ZERO); in emit_single_op()
1584 return BFEXTS(reg_map[dst], reg_map[src2], 0, 31); in emit_single_op()
1586 return BFEXTU(reg_map[dst], reg_map[src2], 0, 31); in emit_single_op()
1587 } else if (dst != src2) { in emit_single_op()
1589 return ADD(reg_map[dst], reg_map[src2], ZERO); in emit_single_op()
1599 return BFEXTS(reg_map[dst], reg_map[src2], 0, 7); in emit_single_op()
1601 return BFEXTU(reg_map[dst], reg_map[src2], 0, 7); in emit_single_op()
1602 } else if (dst != src2) { in emit_single_op()
1604 return ADD(reg_map[dst], reg_map[src2], ZERO); in emit_single_op()
1614 return BFEXTS(reg_map[dst], reg_map[src2], 0, 15); in emit_single_op()
1616 return BFEXTU(reg_map[dst], reg_map[src2], 0, 15); in emit_single_op()
1617 } else if (dst != src2) { in emit_single_op()
1619 return ADD(reg_map[dst], reg_map[src2], ZERO); in emit_single_op()
1629 FAIL_IF(NOR(reg_map[dst], reg_map[src2], reg_map[src2])); in emit_single_op()
1638 FAIL_IF(CLZ(reg_map[dst], reg_map[src2])); in emit_single_op()
1664 FAIL_IF(ADDLI(reg_map[dst], reg_map[src1], src2)); in emit_single_op()
1667 FAIL_IF(SHRUI(OVERFLOW_FLAG, reg_map[dst], 63)); in emit_single_op()
1677 if (src1 != dst) in emit_single_op()
1679 else if (src2 != dst) in emit_single_op()
1696 FAIL_IF(ADD(reg_map[dst],reg_map[src1], reg_map[src2])); in emit_single_op()
1699 FAIL_IF(XOR(OVERFLOW_FLAG,reg_map[dst], overflow_ra)); in emit_single_op()
1706 FAIL_IF(CMPLTU(ULESS_FLAG ,reg_map[dst] ,ULESS_FLAG)); in emit_single_op()
1724 FAIL_IF(ADDLI(reg_map[dst], reg_map[src1], src2)); in emit_single_op()
1731 FAIL_IF(ADD(reg_map[dst], reg_map[src1], reg_map[src2])); in emit_single_op()
1735 FAIL_IF(CMPLTU(TMP_EREG1, reg_map[dst], TMP_EREG1)); in emit_single_op()
1737 FAIL_IF(ADD(reg_map[dst], reg_map[dst], ULESS_FLAG)); in emit_single_op()
1743 FAIL_IF(CMPLTUI(TMP_EREG2, reg_map[dst], 1)); in emit_single_op()
1762 if (src1 != dst) in emit_single_op()
1781 FAIL_IF(ADDLI(reg_map[dst], reg_map[src1], -src2)); in emit_single_op()
1789 if (src1 != dst) in emit_single_op()
1814 FAIL_IF(SUB(reg_map[dst], reg_map[src1], reg_map[src2])); in emit_single_op()
1818 FAIL_IF(XOR(OVERFLOW_FLAG, reg_map[dst], overflow_ra)); in emit_single_op()
1839 FAIL_IF(ADDLI(reg_map[dst], reg_map[src1], -src2)); in emit_single_op()
1845 FAIL_IF(SUB(reg_map[dst], reg_map[src1], reg_map[src2])); in emit_single_op()
1849 FAIL_IF(CMOVEQZ(TMP_EREG1, reg_map[dst], ULESS_FLAG)); in emit_single_op()
1851 FAIL_IF(SUB(reg_map[dst], reg_map[dst], ULESS_FLAG)); in emit_single_op()
1865 FAIL_IF(MUL(reg_map[dst], reg_map[src1], reg_map[src2])); in emit_single_op()
1878 compiler, op_norm, reg_map[dst], reg_map[src1], \ in emit_single_op()
1887 compiler, op_norm, reg_map[dst], reg_map[src1], \ in emit_single_op()
1911 compiler, op_imm, reg_map[dst], reg_map[src1], \ in emit_single_op()
1920 compiler, op_norm, reg_map[dst], reg_map[src1], \ in emit_single_op()
1941 …(struct sljit_compiler *compiler, sljit_s32 op, sljit_s32 flags, sljit_s32 dst, sljit_sw dstw, slj… in emit_op() argument
1957 if (SLJIT_UNLIKELY(dst == SLJIT_UNUSED)) { in emit_op()
1962 } else if (FAST_IS_REG(dst)) { in emit_op()
1963 dst_r = dst; in emit_op()
1967 …} else if ((dst & SLJIT_MEM) && !getput_arg_fast(compiler, flags | ARG_TEST, TMP_REG1_mapped, dst,… in emit_op()
2027 if ((op >= SLJIT_MOV && op <= SLJIT_MOVU_S32) && (dst & SLJIT_MEM)) in emit_op()
2041 if (!can_cache(src1, src1w, src2, src2w) && can_cache(src1, src1w, dst, dstw)) { in emit_op()
2043 FAIL_IF(getput_arg(compiler, flags | LOAD_DATA, TMP_REG1_mapped, src1, src1w, dst, dstw)); in emit_op()
2046 FAIL_IF(getput_arg(compiler, flags | LOAD_DATA, TMP_REG2_mapped, src2, src2w, dst, dstw)); in emit_op()
2049 FAIL_IF(getput_arg(compiler, flags | LOAD_DATA, TMP_REG1_mapped, src1, src1w, dst, dstw)); in emit_op()
2051 FAIL_IF(getput_arg(compiler, flags | LOAD_DATA, reg_map[sugg_src2_r], src2, src2w, dst, dstw)); in emit_op()
2055 if (dst & SLJIT_MEM) { in emit_op()
2057 getput_arg_fast(compiler, flags, reg_map[dst_r], dst, dstw); in emit_op()
2061 return getput_arg(compiler, flags, reg_map[dst_r], dst, dstw, 0, 0); in emit_op()
2067 …jit_emit_op_flags(struct sljit_compiler *compiler, sljit_s32 op, sljit_s32 dst, sljit_sw dstw, slj… in sljit_emit_op_flags() argument
2074 CHECK(check_sljit_emit_op_flags(compiler, op, dst, dstw, src, srcw, type)); in sljit_emit_op_flags()
2075 ADJUST_LOCAL_OFFSET(dst, dstw); in sljit_emit_op_flags()
2080 sugg_dst_ar = reg_map[(op < SLJIT_ADD && FAST_IS_REG(dst)) ? dst : TMP_REG2]; in sljit_emit_op_flags()
2086 FAIL_IF(emit_op_mem2(compiler, mem_type | LOAD_DATA, TMP_REG1_mapped, src, srcw, dst, dstw)); in sljit_emit_op_flags()
2138 … | flags, mem_type | CUMULATIVE_OP | LOGICAL_OP | IMM_OP | ALT_KEEP_CACHE, dst, dstw, src, srcw, T… in sljit_emit_op_flags()
2141 if (dst & SLJIT_MEM) in sljit_emit_op_flags()
2142 return emit_op_mem(compiler, mem_type, dst_ar, dst, dstw); in sljit_emit_op_flags()
2177 …32 sljit_emit_op1(struct sljit_compiler *compiler, sljit_s32 op, sljit_s32 dst, sljit_sw dstw, slj… in sljit_emit_op1() argument
2180 CHECK(check_sljit_emit_op1(compiler, op, dst, dstw, src, srcw)); in sljit_emit_op1()
2181 ADJUST_LOCAL_OFFSET(dst, dstw); in sljit_emit_op1()
2187 return emit_op(compiler, SLJIT_MOV, WORD_DATA, dst, dstw, TMP_REG1, 0, src, srcw); in sljit_emit_op1()
2190 return emit_op(compiler, SLJIT_MOV_U32, INT_DATA, dst, dstw, TMP_REG1, 0, src, srcw); in sljit_emit_op1()
2193 …return emit_op(compiler, SLJIT_MOV_S32, INT_DATA | SIGNED_DATA, dst, dstw, TMP_REG1, 0, src, srcw); in sljit_emit_op1()
2196 …return emit_op(compiler, SLJIT_MOV_U8, BYTE_DATA, dst, dstw, TMP_REG1, 0, src, (src & SLJIT_IMM) ?… in sljit_emit_op1()
2199 …return emit_op(compiler, SLJIT_MOV_S8, BYTE_DATA | SIGNED_DATA, dst, dstw, TMP_REG1, 0, src, (src … in sljit_emit_op1()
2202 …return emit_op(compiler, SLJIT_MOV_U16, HALF_DATA, dst, dstw, TMP_REG1, 0, src, (src & SLJIT_IMM) … in sljit_emit_op1()
2205 …return emit_op(compiler, SLJIT_MOV_S16, HALF_DATA | SIGNED_DATA, dst, dstw, TMP_REG1, 0, src, (src… in sljit_emit_op1()
2209 return emit_op(compiler, SLJIT_MOV, WORD_DATA | WRITE_BACK, dst, dstw, TMP_REG1, 0, src, srcw); in sljit_emit_op1()
2212 return emit_op(compiler, SLJIT_MOV_U32, INT_DATA | WRITE_BACK, dst, dstw, TMP_REG1, 0, src, srcw); in sljit_emit_op1()
2215 …return emit_op(compiler, SLJIT_MOV_S32, INT_DATA | SIGNED_DATA | WRITE_BACK, dst, dstw, TMP_REG1, … in sljit_emit_op1()
2218 …return emit_op(compiler, SLJIT_MOV_U8, BYTE_DATA | WRITE_BACK, dst, dstw, TMP_REG1, 0, src, (src &… in sljit_emit_op1()
2221 …return emit_op(compiler, SLJIT_MOV_S8, BYTE_DATA | SIGNED_DATA | WRITE_BACK, dst, dstw, TMP_REG1, … in sljit_emit_op1()
2224 …return emit_op(compiler, SLJIT_MOV_U16, HALF_DATA | WRITE_BACK, dst, dstw, TMP_REG1, 0, src, (src … in sljit_emit_op1()
2227 …return emit_op(compiler, SLJIT_MOV_S16, HALF_DATA | SIGNED_DATA | WRITE_BACK, dst, dstw, TMP_REG1,… in sljit_emit_op1()
2230 return emit_op(compiler, op, 0, dst, dstw, TMP_REG1, 0, src, srcw); in sljit_emit_op1()
2233 …return emit_op(compiler, SLJIT_SUB | GET_ALL_FLAGS(op), IMM_OP, dst, dstw, SLJIT_IMM, 0, src, srcw… in sljit_emit_op1()
2236 …return emit_op(compiler, op, (op & SLJIT_I32_OP) ? INT_DATA : WORD_DATA, dst, dstw, TMP_REG1, 0, s… in sljit_emit_op1()
2242 …32 sljit_emit_op2(struct sljit_compiler *compiler, sljit_s32 op, sljit_s32 dst, sljit_sw dstw, slj… in sljit_emit_op2() argument
2245 CHECK(check_sljit_emit_op2(compiler, op, dst, dstw, src1, src1w, src2, src2w)); in sljit_emit_op2()
2246 ADJUST_LOCAL_OFFSET(dst, dstw); in sljit_emit_op2()
2253 return emit_op(compiler, op, CUMULATIVE_OP | IMM_OP, dst, dstw, src1, src1w, src2, src2w); in sljit_emit_op2()
2257 return emit_op(compiler, op, IMM_OP, dst, dstw, src1, src1w, src2, src2w); in sljit_emit_op2()
2260 return emit_op(compiler, op, CUMULATIVE_OP, dst, dstw, src1, src1w, src2, src2w); in sljit_emit_op2()
2265 …return emit_op(compiler, op, CUMULATIVE_OP | LOGICAL_OP | IMM_OP, dst, dstw, src1, src1w, src2, sr… in sljit_emit_op2()
2275 return emit_op(compiler, op, IMM_OP, dst, dstw, src1, src1w, src2, src2w); in sljit_emit_op2()
2495 …2 sljit_emit_fop1(struct sljit_compiler *compiler, sljit_s32 op, sljit_s32 dst, sljit_sw dstw, slj… in sljit_emit_fop1() argument
2500 …2 sljit_emit_fop2(struct sljit_compiler *compiler, sljit_s32 op, sljit_s32 dst, sljit_sw dstw, slj… in sljit_emit_fop2() argument
2505 … sljit_const * sljit_emit_const(struct sljit_compiler *compiler, sljit_s32 dst, sljit_sw dstw, slj… in sljit_emit_const() argument
2513 CHECK_PTR(check_sljit_emit_const(compiler, dst, dstw, init_value)); in sljit_emit_const()
2514 ADJUST_LOCAL_OFFSET(dst, dstw); in sljit_emit_const()
2520 reg = FAST_IS_REG(dst) ? dst : TMP_REG2; in sljit_emit_const()
2524 if (dst & SLJIT_MEM) in sljit_emit_const()
2525 PTR_FAIL_IF(emit_op(compiler, SLJIT_MOV, WORD_DATA, dst, dstw, TMP_REG1, 0, TMP_REG2, 0)); in sljit_emit_const()