Lines Matching refs:compiler
332 static sljit_s32 push_inst_debug(struct sljit_compiler *compiler, sljit_ins ins, int line) in push_inst_debug() argument
334 sljit_ins *ptr = (sljit_ins *)ensure_buf(compiler, sizeof(sljit_ins)); in push_inst_debug()
337 compiler->size++; in push_inst_debug()
343 static sljit_s32 push_inst_nodebug(struct sljit_compiler *compiler, sljit_ins ins) in push_inst_nodebug() argument
345 sljit_ins *ptr = (sljit_ins *)ensure_buf(compiler, sizeof(sljit_ins)); in push_inst_nodebug()
348 compiler->size++; in push_inst_nodebug()
354 static sljit_s32 push_inst(struct sljit_compiler *compiler, sljit_ins ins) in push_inst() argument
356 sljit_ins *ptr = (sljit_ins *)ensure_buf(compiler, sizeof(sljit_ins)); in push_inst()
359 compiler->size++; in push_inst()
382 push_inst(compiler, encoding)
385 push_3_buffer(compiler, opcode, dst, srca, srcb, __LINE__)
388 push_2_buffer(compiler, opcode, dst, src, __LINE__)
391 push_jr_buffer(compiler, TILEGX_OPC_JR, reg, __LINE__)
394 push_3_buffer(compiler, TILEGX_OPC_ADD, dst, srca, srcb, __LINE__)
397 push_3_buffer(compiler, TILEGX_OPC_SUB, dst, srca, srcb, __LINE__)
400 push_3_buffer(compiler, TILEGX_OPC_MULX, dst, srca, srcb, __LINE__)
403 push_3_buffer(compiler, TILEGX_OPC_NOR, dst, srca, srcb, __LINE__)
406 push_3_buffer(compiler, TILEGX_OPC_OR, dst, srca, srcb, __LINE__)
409 push_3_buffer(compiler, TILEGX_OPC_XOR, dst, srca, srcb, __LINE__)
412 push_3_buffer(compiler, TILEGX_OPC_AND, dst, srca, srcb, __LINE__)
415 push_2_buffer(compiler, TILEGX_OPC_CLZ, dst, src, __LINE__)
418 push_3_buffer(compiler, TILEGX_OPC_SHLI, dst, srca, srcb, __LINE__)
421 push_3_buffer(compiler, TILEGX_OPC_SHRUI, dst, srca, imm, __LINE__)
424 push_3_buffer(compiler, TILEGX_OPC_XORI, dst, srca, imm, __LINE__)
427 push_3_buffer(compiler, TILEGX_OPC_ORI, dst, srca, imm, __LINE__)
430 push_3_buffer(compiler, TILEGX_OPC_CMPLTU, dst, srca, srcb, __LINE__)
433 push_3_buffer(compiler, TILEGX_OPC_CMPLTS, dst, srca, srcb, __LINE__)
436 push_3_buffer(compiler, TILEGX_OPC_CMPLTUI, dst, srca, imm, __LINE__)
439 push_3_buffer(compiler, TILEGX_OPC_CMOVNEZ, dst, srca, srcb, __LINE__)
442 push_3_buffer(compiler, TILEGX_OPC_CMOVEQZ, dst, srca, srcb, __LINE__)
445 push_3_buffer(compiler, TILEGX_OPC_ADDLI, dst, srca, srcb, __LINE__)
448 push_3_buffer(compiler, TILEGX_OPC_SHL16INSLI, dst, srca, srcb, __LINE__)
451 push_3_buffer(compiler, TILEGX_OPC_LD_ADD, dst, addr, adjust, __LINE__)
454 push_3_buffer(compiler, TILEGX_OPC_ST_ADD, src, addr, adjust, __LINE__)
457 push_2_buffer(compiler, TILEGX_OPC_LD, dst, addr, __LINE__)
460 push_4_buffer(compiler, TILEGX_OPC_BFEXTU, dst, src, start, end, __LINE__)
463 push_4_buffer(compiler, TILEGX_OPC_BFEXTS, dst, src, start, end, __LINE__)
466 push_inst(compiler, ADD_X1 | DEST_X1(dest) | SRCA_X1(srca) | SRCB_X1(srcb))
469 push_inst(compiler, ADDI_X1 | DEST_X1(dest) | SRCA_X1(srca) | IMM8_X1(imm))
472 push_inst(compiler, ADDLI_X1 | DEST_X1(dest) | SRCA_X1(srca) | IMM16_X1(imm))
475 push_inst(compiler, SHL16INSLI_X1 | DEST_X1(dest) | SRCA_X1(srca) | IMM16_X1(imm))
478 push_inst(compiler, JALR_X1 | SRCA_X1(reg))
481 push_inst(compiler, JR_X1 | SRCA_X1(reg))
626 static sljit_s32 update_buffer(struct sljit_compiler *compiler) in update_buffer() argument
654 return push_inst_nodebug(compiler, bits); in update_buffer()
656 return push_inst(compiler, bits); in update_buffer()
695 return push_inst_nodebug(compiler, bits); in update_buffer()
697 return push_inst(compiler, bits); in update_buffer()
727 return push_inst_nodebug(compiler, bits); in update_buffer()
729 return push_inst(compiler, bits); in update_buffer()
738 static sljit_s32 flush_buffer(struct sljit_compiler *compiler) in flush_buffer() argument
741 FAIL_IF(update_buffer(compiler)); in flush_buffer()
746 static sljit_s32 push_4_buffer(struct sljit_compiler *compiler, tilegx_mnemonic opc, int op0, int o… in push_4_buffer() argument
749 FAIL_IF(update_buffer(compiler)); in push_4_buffer()
766 static sljit_s32 push_3_buffer(struct sljit_compiler *compiler, tilegx_mnemonic opc, int op0, int o… in push_3_buffer() argument
769 FAIL_IF(update_buffer(compiler)); in push_3_buffer()
827 static sljit_s32 push_2_buffer(struct sljit_compiler *compiler, tilegx_mnemonic opc, int op0, int o… in push_2_buffer() argument
830 FAIL_IF(update_buffer(compiler)); in push_2_buffer()
872 static sljit_s32 push_0_buffer(struct sljit_compiler *compiler, tilegx_mnemonic opc, int line) in push_0_buffer() argument
875 FAIL_IF(update_buffer(compiler)); in push_0_buffer()
888 static sljit_s32 push_jr_buffer(struct sljit_compiler *compiler, tilegx_mnemonic opc, int op0, int … in push_jr_buffer() argument
891 FAIL_IF(update_buffer(compiler)); in push_jr_buffer()
902 return flush_buffer(compiler); in push_jr_buffer()
998 SLJIT_API_FUNC_ATTRIBUTE void * sljit_generate_code(struct sljit_compiler *compiler) in sljit_generate_code() argument
1013 CHECK_PTR(check_sljit_generate_code(compiler)); in sljit_generate_code()
1014 reverse_buf(compiler); in sljit_generate_code()
1016 code = (sljit_ins *)SLJIT_MALLOC_EXEC(compiler->size * sizeof(sljit_ins)); in sljit_generate_code()
1018 buf = compiler->buf; in sljit_generate_code()
1022 label = compiler->labels; in sljit_generate_code()
1023 jump = compiler->jumps; in sljit_generate_code()
1024 const_ = compiler->consts; in sljit_generate_code()
1073 SLJIT_ASSERT(code_ptr - code <= (sljit_sw)compiler->size); in sljit_generate_code()
1075 jump = compiler->jumps; in sljit_generate_code()
1116 compiler->error = SLJIT_ERR_COMPILED; in sljit_generate_code()
1117 compiler->executable_size = (code_ptr - code) * sizeof(sljit_ins); in sljit_generate_code()
1122 static sljit_s32 load_immediate(struct sljit_compiler *compiler, sljit_s32 dst_ar, sljit_sw imm) in load_immediate() argument
1145 static sljit_s32 emit_const(struct sljit_compiler *compiler, sljit_s32 dst_ar, sljit_sw imm, int fl… in emit_const() argument
1160 static sljit_s32 emit_const_64(struct sljit_compiler *compiler, sljit_s32 dst_ar, sljit_sw imm, int… in emit_const_64() argument
1177 SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_enter(struct sljit_compiler *compiler, in sljit_emit_enter() argument
1185 …CHECK(check_sljit_emit_enter(compiler, options, args, scratches, saveds, fscratches, fsaveds, loca… in sljit_emit_enter()
1186 set_emit_enter(compiler, options, args, scratches, saveds, fscratches, fsaveds, local_size); in sljit_emit_enter()
1190 compiler->local_size = local_size; in sljit_emit_enter()
1197 FAIL_IF(load_immediate(compiler, TMP_REG1_mapped, local_size)); in sljit_emit_enter()
1227 SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_set_context(struct sljit_compiler *compiler, in sljit_set_context() argument
1232 …CHECK(check_sljit_set_context(compiler, options, args, scratches, saveds, fscratches, fsaveds, loc… in sljit_set_context()
1233 set_set_context(compiler, options, args, scratches, saveds, fscratches, fsaveds, local_size); in sljit_set_context()
1236 compiler->local_size = (local_size + 7) & ~7; in sljit_set_context()
1241 SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_return(struct sljit_compiler *compiler, sljit_s32 op,… in sljit_emit_return() argument
1249 CHECK(check_sljit_emit_return(compiler, op, src, srcw)); in sljit_emit_return()
1251 FAIL_IF(emit_mov_before_return(compiler, op, src, srcw)); in sljit_emit_return()
1253 local_size = compiler->local_size; in sljit_emit_return()
1257 FAIL_IF(load_immediate(compiler, TMP_REG1_mapped, local_size)); in sljit_emit_return()
1268 saveds = compiler->saveds; in sljit_emit_return()
1275 for (i = compiler->scratches; i >= SLJIT_FIRST_SAVED_REG; i--) { in sljit_emit_return()
1279 if (compiler->local_size <= SIMM_16BIT_MAX) in sljit_emit_return()
1280 FAIL_IF(ADDLI(SLJIT_LOCALS_REG_mapped, SLJIT_LOCALS_REG_mapped, compiler->local_size)); in sljit_emit_return()
1290 static sljit_s32 getput_arg_fast(struct sljit_compiler *compiler, sljit_s32 flags, sljit_s32 reg_ar… in getput_arg_fast() argument
1342 static sljit_s32 getput_arg(struct sljit_compiler *compiler, sljit_s32 flags, sljit_s32 reg_ar, slj… in getput_arg() argument
1369 if (argw == compiler->cache_argw) { in getput_arg()
1371 if (arg == compiler->cache_arg) { in getput_arg()
1378 if ((SLJIT_MEM | (arg & OFFS_REG_MASK)) == compiler->cache_arg) { in getput_arg()
1380 compiler->cache_arg = arg; in getput_arg()
1381 compiler->cache_argw = argw; in getput_arg()
1396 if ((SLJIT_MEM | (arg & OFFS_REG_MASK)) == compiler->cache_arg) { in getput_arg()
1407 compiler->cache_arg = SLJIT_MEM | (arg & OFFS_REG_MASK); in getput_arg()
1408 compiler->cache_argw = argw; in getput_arg()
1414 compiler->cache_arg = arg; in getput_arg()
1415 compiler->cache_argw = argw; in getput_arg()
1460 if (compiler->cache_arg == SLJIT_MEM in getput_arg()
1461 && argw - compiler->cache_argw <= SIMM_16BIT_MAX in getput_arg()
1462 && argw - compiler->cache_argw >= SIMM_16BIT_MIN) { in getput_arg()
1463 if (argw != compiler->cache_argw) { in getput_arg()
1464 FAIL_IF(ADD(TMP_REG3_mapped, TMP_REG3_mapped, argw - compiler->cache_argw)); in getput_arg()
1465 compiler->cache_argw = argw; in getput_arg()
1470 compiler->cache_arg = SLJIT_MEM; in getput_arg()
1471 compiler->cache_argw = argw; in getput_arg()
1472 FAIL_IF(load_immediate(compiler, TMP_REG3_mapped, argw)); in getput_arg()
1483 if (compiler->cache_arg == arg in getput_arg()
1484 && argw - compiler->cache_argw <= SIMM_16BIT_MAX in getput_arg()
1485 && argw - compiler->cache_argw >= SIMM_16BIT_MIN) { in getput_arg()
1486 if (argw != compiler->cache_argw) { in getput_arg()
1487 FAIL_IF(ADDLI(TMP_REG3_mapped, TMP_REG3_mapped, argw - compiler->cache_argw)); in getput_arg()
1488 compiler->cache_argw = argw; in getput_arg()
1497 if (compiler->cache_arg == SLJIT_MEM in getput_arg()
1498 && argw - compiler->cache_argw <= SIMM_16BIT_MAX in getput_arg()
1499 && argw - compiler->cache_argw >= SIMM_16BIT_MIN) { in getput_arg()
1500 if (argw != compiler->cache_argw) in getput_arg()
1501 FAIL_IF(ADDLI(TMP_REG3_mapped, TMP_REG3_mapped, argw - compiler->cache_argw)); in getput_arg()
1503 compiler->cache_arg = SLJIT_MEM; in getput_arg()
1504 FAIL_IF(load_immediate(compiler, TMP_REG3_mapped, argw)); in getput_arg()
1507 compiler->cache_argw = argw; in getput_arg()
1519 compiler->cache_arg = arg; in getput_arg()
1535 static SLJIT_INLINE sljit_s32 emit_op_mem(struct sljit_compiler *compiler, sljit_s32 flags, sljit_s… in emit_op_mem() argument
1537 if (getput_arg_fast(compiler, flags, reg_ar, arg, argw)) in emit_op_mem()
1538 return compiler->error; in emit_op_mem()
1540 compiler->cache_arg = 0; in emit_op_mem()
1541 compiler->cache_argw = 0; in emit_op_mem()
1542 return getput_arg(compiler, flags, reg_ar, arg, argw, 0, 0); in emit_op_mem()
1545 static SLJIT_INLINE sljit_s32 emit_op_mem2(struct sljit_compiler *compiler, sljit_s32 flags, sljit_… in emit_op_mem2() argument
1547 if (getput_arg_fast(compiler, flags, reg, arg1, arg1w)) in emit_op_mem2()
1548 return compiler->error; in emit_op_mem2()
1549 return getput_arg(compiler, flags, reg, arg1, arg1w, arg2, arg2w); in emit_op_mem2()
1552 SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_fast_enter(struct sljit_compiler *compiler, sljit_s32… in sljit_emit_fast_enter() argument
1555 CHECK(check_sljit_emit_fast_enter(compiler, dst, dstw)); in sljit_emit_fast_enter()
1566 return emit_op_mem(compiler, WORD_DATA, RA, dst, dstw); in sljit_emit_fast_enter()
1569 SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_fast_return(struct sljit_compiler *compiler, sljit_s3… in sljit_emit_fast_return() argument
1572 CHECK(check_sljit_emit_fast_return(compiler, src, srcw)); in sljit_emit_fast_return()
1579 FAIL_IF(emit_op_mem(compiler, WORD_DATA | LOAD_DATA, RA, src, srcw)); in sljit_emit_fast_return()
1582 FAIL_IF(load_immediate(compiler, RA, srcw)); in sljit_emit_fast_return()
1587 static SLJIT_INLINE sljit_s32 emit_single_op(struct sljit_compiler *compiler, sljit_s32 op, sljit_s… in emit_single_op() argument
1795 FAIL_IF(load_immediate(compiler, ADDR_TMP_mapped, src2)); in emit_single_op()
1854 FAIL_IF(load_immediate(compiler, ADDR_TMP_mapped, -src2)); in emit_single_op()
1880 FAIL_IF(load_immediate(compiler, TMP_REG2_mapped, src2)); in emit_single_op()
1891 FAIL_IF(load_immediate(compiler, ADDR_TMP_mapped, src2)); \ in emit_single_op()
1894 compiler, op_norm, EQUAL_FLAG, reg_map[src1], \ in emit_single_op()
1898 compiler, op_norm, reg_map[dst], reg_map[src1], \ in emit_single_op()
1903 compiler, op_norm, EQUAL_FLAG, reg_map[src1], \ in emit_single_op()
1907 compiler, op_norm, reg_map[dst], reg_map[src1], \ in emit_single_op()
1927 compiler, op_imm, EQUAL_FLAG, reg_map[src1], \ in emit_single_op()
1931 compiler, op_imm, reg_map[dst], reg_map[src1], \ in emit_single_op()
1936 compiler, op_norm, EQUAL_FLAG, reg_map[src1], \ in emit_single_op()
1940 compiler, op_norm, reg_map[dst], reg_map[src1], \ in emit_single_op()
1961 static sljit_s32 emit_op(struct sljit_compiler *compiler, sljit_s32 op, sljit_s32 flags, sljit_s32 … in emit_op() argument
1973 compiler->cache_arg = 0; in emit_op()
1974 compiler->cache_argw = 0; in emit_op()
1987 …} else if ((dst & SLJIT_MEM) && !getput_arg_fast(compiler, flags | ARG_TEST, TMP_REG1_mapped, dst,… in emit_op()
2022 FAIL_IF(load_immediate(compiler, TMP_REG1_mapped, src1w)); in emit_op()
2027 if (getput_arg_fast(compiler, flags | LOAD_DATA, TMP_REG1_mapped, src1, src1w)) in emit_op()
2028 FAIL_IF(compiler->error); in emit_op()
2043 FAIL_IF(load_immediate(compiler, reg_map[sugg_src2_r], src2w)); in emit_op()
2052 if (getput_arg_fast(compiler, flags | LOAD_DATA, reg_map[sugg_src2_r], src2, src2w)) in emit_op()
2053 FAIL_IF(compiler->error); in emit_op()
2062 FAIL_IF(getput_arg(compiler, flags | LOAD_DATA, TMP_REG2_mapped, src2, src2w, src1, src1w)); in emit_op()
2063 FAIL_IF(getput_arg(compiler, flags | LOAD_DATA, TMP_REG1_mapped, src1, src1w, dst, dstw)); in emit_op()
2065 FAIL_IF(getput_arg(compiler, flags | LOAD_DATA, TMP_REG1_mapped, src1, src1w, src2, src2w)); in emit_op()
2066 FAIL_IF(getput_arg(compiler, flags | LOAD_DATA, TMP_REG2_mapped, src2, src2w, dst, dstw)); in emit_op()
2069 FAIL_IF(getput_arg(compiler, flags | LOAD_DATA, TMP_REG1_mapped, src1, src1w, dst, dstw)); in emit_op()
2071 FAIL_IF(getput_arg(compiler, flags | LOAD_DATA, reg_map[sugg_src2_r], src2, src2w, dst, dstw)); in emit_op()
2073 FAIL_IF(emit_single_op(compiler, op, flags, dst_r, src1_r, src2_r)); in emit_op()
2077 getput_arg_fast(compiler, flags, reg_map[dst_r], dst, dstw); in emit_op()
2078 return compiler->error; in emit_op()
2081 return getput_arg(compiler, flags, reg_map[dst_r], dst, dstw, 0, 0); in emit_op()
2087 SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op_flags(struct sljit_compiler *compiler, sljit_s32 o… in sljit_emit_op_flags() argument
2094 CHECK(check_sljit_emit_op_flags(compiler, op, dst, dstw, src, srcw, type)); in sljit_emit_op_flags()
2105 compiler->cache_arg = 0; in sljit_emit_op_flags()
2106 compiler->cache_argw = 0; in sljit_emit_op_flags()
2109 FAIL_IF(emit_op_mem2(compiler, mem_type | LOAD_DATA, TMP_REG1_mapped, src, srcw, dst, dstw)); in sljit_emit_op_flags()
2161 …return emit_op(compiler, op | flags, mem_type | CUMULATIVE_OP | LOGICAL_OP | IMM_OP | ALT_KEEP_CAC… in sljit_emit_op_flags()
2165 return emit_op_mem(compiler, mem_type, dst_ar, dst, dstw); in sljit_emit_op_flags()
2173 SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op0(struct sljit_compiler *compiler, sljit_s32 op) { in sljit_emit_op0() argument
2175 CHECK(check_sljit_emit_op0(compiler, op)); in sljit_emit_op0()
2180 return push_0_buffer(compiler, TILEGX_OPC_FNOP, __LINE__); in sljit_emit_op0()
2197 SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op1(struct sljit_compiler *compiler, sljit_s32 op, sl… in sljit_emit_op1() argument
2200 CHECK(check_sljit_emit_op1(compiler, op, dst, dstw, src, srcw)); in sljit_emit_op1()
2207 return emit_op(compiler, SLJIT_MOV, WORD_DATA, dst, dstw, TMP_REG1, 0, src, srcw); in sljit_emit_op1()
2210 return emit_op(compiler, SLJIT_MOV_U32, INT_DATA, dst, dstw, TMP_REG1, 0, src, srcw); in sljit_emit_op1()
2213 …return emit_op(compiler, SLJIT_MOV_S32, INT_DATA | SIGNED_DATA, dst, dstw, TMP_REG1, 0, src, srcw); in sljit_emit_op1()
2216 …return emit_op(compiler, SLJIT_MOV_U8, BYTE_DATA, dst, dstw, TMP_REG1, 0, src, (src & SLJIT_IMM) ?… in sljit_emit_op1()
2219 …return emit_op(compiler, SLJIT_MOV_S8, BYTE_DATA | SIGNED_DATA, dst, dstw, TMP_REG1, 0, src, (src … in sljit_emit_op1()
2222 …return emit_op(compiler, SLJIT_MOV_U16, HALF_DATA, dst, dstw, TMP_REG1, 0, src, (src & SLJIT_IMM) … in sljit_emit_op1()
2225 …return emit_op(compiler, SLJIT_MOV_S16, HALF_DATA | SIGNED_DATA, dst, dstw, TMP_REG1, 0, src, (src… in sljit_emit_op1()
2229 return emit_op(compiler, SLJIT_MOV, WORD_DATA | WRITE_BACK, dst, dstw, TMP_REG1, 0, src, srcw); in sljit_emit_op1()
2232 return emit_op(compiler, SLJIT_MOV_U32, INT_DATA | WRITE_BACK, dst, dstw, TMP_REG1, 0, src, srcw); in sljit_emit_op1()
2235 …return emit_op(compiler, SLJIT_MOV_S32, INT_DATA | SIGNED_DATA | WRITE_BACK, dst, dstw, TMP_REG1, … in sljit_emit_op1()
2238 …return emit_op(compiler, SLJIT_MOV_U8, BYTE_DATA | WRITE_BACK, dst, dstw, TMP_REG1, 0, src, (src &… in sljit_emit_op1()
2241 …return emit_op(compiler, SLJIT_MOV_S8, BYTE_DATA | SIGNED_DATA | WRITE_BACK, dst, dstw, TMP_REG1, … in sljit_emit_op1()
2244 …return emit_op(compiler, SLJIT_MOV_U16, HALF_DATA | WRITE_BACK, dst, dstw, TMP_REG1, 0, src, (src … in sljit_emit_op1()
2247 …return emit_op(compiler, SLJIT_MOV_S16, HALF_DATA | SIGNED_DATA | WRITE_BACK, dst, dstw, TMP_REG1,… in sljit_emit_op1()
2250 return emit_op(compiler, op, 0, dst, dstw, TMP_REG1, 0, src, srcw); in sljit_emit_op1()
2253 …return emit_op(compiler, SLJIT_SUB | GET_ALL_FLAGS(op), IMM_OP, dst, dstw, SLJIT_IMM, 0, src, srcw… in sljit_emit_op1()
2256 …return emit_op(compiler, op, (op & SLJIT_I32_OP) ? INT_DATA : WORD_DATA, dst, dstw, TMP_REG1, 0, s… in sljit_emit_op1()
2262 SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op2(struct sljit_compiler *compiler, sljit_s32 op, sl… in sljit_emit_op2() argument
2265 CHECK(check_sljit_emit_op2(compiler, op, dst, dstw, src1, src1w, src2, src2w)); in sljit_emit_op2()
2273 return emit_op(compiler, op, CUMULATIVE_OP | IMM_OP, dst, dstw, src1, src1w, src2, src2w); in sljit_emit_op2()
2277 return emit_op(compiler, op, IMM_OP, dst, dstw, src1, src1w, src2, src2w); in sljit_emit_op2()
2280 return emit_op(compiler, op, CUMULATIVE_OP, dst, dstw, src1, src1w, src2, src2w); in sljit_emit_op2()
2285 …return emit_op(compiler, op, CUMULATIVE_OP | LOGICAL_OP | IMM_OP, dst, dstw, src1, src1w, src2, sr… in sljit_emit_op2()
2295 return emit_op(compiler, op, IMM_OP, dst, dstw, src1, src1w, src2, src2w); in sljit_emit_op2()
2301 SLJIT_API_FUNC_ATTRIBUTE struct sljit_label * sljit_emit_label(struct sljit_compiler *compiler) in sljit_emit_label() argument
2305 flush_buffer(compiler); in sljit_emit_label()
2308 CHECK_PTR(check_sljit_emit_label(compiler)); in sljit_emit_label()
2310 if (compiler->last_label && compiler->last_label->size == compiler->size) in sljit_emit_label()
2311 return compiler->last_label; in sljit_emit_label()
2313 label = (struct sljit_label *)ensure_abuf(compiler, sizeof(struct sljit_label)); in sljit_emit_label()
2315 set_label(label, compiler); in sljit_emit_label()
2319 SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_ijump(struct sljit_compiler *compiler, sljit_s32 type… in sljit_emit_ijump() argument
2324 flush_buffer(compiler); in sljit_emit_ijump()
2327 CHECK(check_sljit_emit_ijump(compiler, type, src, srcw)); in sljit_emit_ijump()
2341 FAIL_IF(emit_const(compiler, reg_map[PIC_ADDR_REG], srcw, 1)); in sljit_emit_ijump()
2344 FAIL_IF(emit_op(compiler, SLJIT_MOV, WORD_DATA, TMP_REG2, 0, TMP_REG1, 0, src, srcw)); in sljit_emit_ijump()
2370 jump = (struct sljit_jump *)ensure_abuf(compiler, sizeof(struct sljit_jump)); in sljit_emit_ijump()
2372 set_jump(jump, compiler, JUMP_ADDR | ((type >= SLJIT_FAST_CALL) ? IS_JAL : 0)); in sljit_emit_ijump()
2374 FAIL_IF(emit_const(compiler, TMP_REG2_mapped, 0, 1)); in sljit_emit_ijump()
2378 jump->addr = compiler->size; in sljit_emit_ijump()
2381 jump->addr = compiler->size; in sljit_emit_ijump()
2388 FAIL_IF(emit_op(compiler, SLJIT_MOV, WORD_DATA, TMP_REG2, 0, TMP_REG1, 0, src, srcw)); in sljit_emit_ijump()
2389 flush_buffer(compiler); in sljit_emit_ijump()
2395 jump->addr = compiler->size; in sljit_emit_ijump()
2408 SLJIT_API_FUNC_ATTRIBUTE struct sljit_jump * sljit_emit_jump(struct sljit_compiler *compiler, sljit… in sljit_emit_jump() argument
2414 flush_buffer(compiler); in sljit_emit_jump()
2417 CHECK_PTR(check_sljit_emit_jump(compiler, type)); in sljit_emit_jump()
2419 jump = (struct sljit_jump *)ensure_abuf(compiler, sizeof(struct sljit_jump)); in sljit_emit_jump()
2421 set_jump(jump, compiler, type & SLJIT_REWRITABLE_JUMP); in sljit_emit_jump()
2476 PTR_FAIL_IF(emit_const(compiler, TMP_REG2_mapped, 0, 1)); in sljit_emit_jump()
2478 jump->addr = compiler->size; in sljit_emit_jump()
2485 jump->addr = compiler->size; in sljit_emit_jump()
2497 SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_fop1(struct sljit_compiler *compiler, sljit_s32 op, s… in sljit_emit_fop1() argument
2502 SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_fop2(struct sljit_compiler *compiler, sljit_s32 op, s… in sljit_emit_fop2() argument
2507 SLJIT_API_FUNC_ATTRIBUTE struct sljit_const * sljit_emit_const(struct sljit_compiler *compiler, slj… in sljit_emit_const() argument
2512 flush_buffer(compiler); in sljit_emit_const()
2515 CHECK_PTR(check_sljit_emit_const(compiler, dst, dstw, init_value)); in sljit_emit_const()
2518 const_ = (struct sljit_const *)ensure_abuf(compiler, sizeof(struct sljit_const)); in sljit_emit_const()
2520 set_const(const_, compiler); in sljit_emit_const()
2524 PTR_FAIL_IF(emit_const_64(compiler, reg, init_value, 1)); in sljit_emit_const()
2527 PTR_FAIL_IF(emit_op(compiler, SLJIT_MOV, WORD_DATA, dst, dstw, TMP_REG1, 0, TMP_REG2, 0)); in sljit_emit_const()
2558 SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op_custom(struct sljit_compiler *compiler, in sljit_emit_op_custom() argument
2562 CHECK(check_sljit_emit_op_custom(compiler, instruction, size)); in sljit_emit_op_custom()