Lines Matching refs:inst

277 #define INC_SIZE(s)			(*inst++ = (s), compiler->size += (s))
279 #define PUSH_REG(r) (*inst++ = (PUSH_r + (r)))
280 #define POP_REG(r) (*inst++ = (POP_r + (r)))
281 #define RET() (*inst++ = (RET_near))
282 #define RET_I16(n) (*inst++ = (RET_i16), *inst++ = n, *inst++ = 0)
284 #define MOV_RM(mod, reg, rm) (*inst++ = (MOV_r_rm), *inst++ = (mod) << 6 | (reg) << 3 | (rm))
716 sljit_u8 *inst; in emit_endbranch() local
717 inst = (sljit_u8*)ensure_buf(compiler, 1 + 4); in emit_endbranch()
718 FAIL_IF(!inst); in emit_endbranch()
720 *inst++ = 0xf3; in emit_endbranch()
721 *inst++ = 0x0f; in emit_endbranch()
722 *inst++ = 0x1e; in emit_endbranch()
724 *inst = 0xfb; in emit_endbranch()
726 *inst = 0xfa; in emit_endbranch()
737 sljit_u8 *inst; in emit_rdssp() local
746 inst = (sljit_u8*)ensure_buf(compiler, 1 + size); in emit_rdssp()
747 FAIL_IF(!inst); in emit_rdssp()
749 *inst++ = 0xf3; in emit_rdssp()
751 *inst++ = REX_W | (reg_map[reg] <= 7 ? 0 : REX_B); in emit_rdssp()
753 *inst++ = 0x0f; in emit_rdssp()
754 *inst++ = 0x1e; in emit_rdssp()
755 *inst = (0x3 << 6) | (0x1 << 3) | (reg_map[reg] & 0x7); in emit_rdssp()
766 sljit_u8 *inst; in emit_incssp() local
775 inst = (sljit_u8*)ensure_buf(compiler, 1 + size); in emit_incssp()
776 FAIL_IF(!inst); in emit_incssp()
778 *inst++ = 0xf3; in emit_incssp()
780 *inst++ = REX_W | (reg_map[reg] <= 7 ? 0 : REX_B); in emit_incssp()
782 *inst++ = 0x0f; in emit_incssp()
783 *inst++ = 0xae; in emit_incssp()
784 *inst = (0x3 << 6) | (0x5 << 3) | (reg_map[reg] & 0x7); in emit_incssp()
805 sljit_u8 *inst; in adjust_shadow_stack() local
817 inst = (sljit_u8*)ensure_buf(compiler, 1 + 3); in adjust_shadow_stack()
818 FAIL_IF(!inst); in adjust_shadow_stack()
820 *inst++ = 0x8b; in adjust_shadow_stack()
821 *inst++ = 0x6d; in adjust_shadow_stack()
822 *inst = 0; in adjust_shadow_stack()
838 inst = (sljit_u8*)ensure_buf(compiler, 1 + 2); in adjust_shadow_stack()
839 FAIL_IF(!inst); in adjust_shadow_stack()
841 *inst++ = get_jump_code(SLJIT_EQUAL) - 0x10; in adjust_shadow_stack()
843 sljit_u8 *jz_after_cmp_inst = inst; in adjust_shadow_stack()
856 inst = (sljit_u8*)ensure_buf(compiler, 1 + 2); in adjust_shadow_stack()
857 FAIL_IF(!inst); in adjust_shadow_stack()
859 *inst++ = JMP_i8; in adjust_shadow_stack()
860 *inst = size_before_rdssp_inst - compiler->size; in adjust_shadow_stack()
883 sljit_u8* inst; in emit_mov() local
888 inst = emit_x86_instruction(compiler, 1, src, 0, dst, dstw); in emit_mov()
889 FAIL_IF(!inst); in emit_mov()
890 *inst = MOV_rm_r; in emit_mov()
911 inst = emit_x86_instruction(compiler, 1, TMP_REG1, 0, dst, dstw); in emit_mov()
912 FAIL_IF(!inst); in emit_mov()
913 *inst = MOV_rm_r; in emit_mov()
917 inst = emit_x86_instruction(compiler, 1, SLJIT_IMM, srcw, dst, dstw); in emit_mov()
918 FAIL_IF(!inst); in emit_mov()
919 *inst = MOV_rm_i32; in emit_mov()
923 inst = emit_x86_instruction(compiler, 1, dst, 0, src, srcw); in emit_mov()
924 FAIL_IF(!inst); in emit_mov()
925 *inst = MOV_r_rm; in emit_mov()
931 inst = emit_x86_instruction(compiler, 1, TMP_REG1, 0, src, srcw); in emit_mov()
932 FAIL_IF(!inst); in emit_mov()
933 *inst = MOV_r_rm; in emit_mov()
934 inst = emit_x86_instruction(compiler, 1, TMP_REG1, 0, dst, dstw); in emit_mov()
935 FAIL_IF(!inst); in emit_mov()
936 *inst = MOV_rm_r; in emit_mov()
942 sljit_u8 *inst; in sljit_emit_op0() local
952 inst = (sljit_u8*)ensure_buf(compiler, 1 + 1); in sljit_emit_op0()
953 FAIL_IF(!inst); in sljit_emit_op0()
955 *inst = INT3; in sljit_emit_op0()
958 inst = (sljit_u8*)ensure_buf(compiler, 1 + 1); in sljit_emit_op0()
959 FAIL_IF(!inst); in sljit_emit_op0()
961 *inst = NOP; in sljit_emit_op0()
989 inst = emit_x86_instruction(compiler, 1, SLJIT_R1, 0, SLJIT_R1, 0); in sljit_emit_op0()
991 inst = emit_x86_instruction(compiler, 1, TMP_REG1, 0, TMP_REG1, 0); in sljit_emit_op0()
993 FAIL_IF(!inst); in sljit_emit_op0()
994 *inst = XOR_r_rm; in sljit_emit_op0()
1003 inst = (sljit_u8*)ensure_buf(compiler, 1 + 1); in sljit_emit_op0()
1004 FAIL_IF(!inst); in sljit_emit_op0()
1006 *inst = CDQ; in sljit_emit_op0()
1009 inst = (sljit_u8*)ensure_buf(compiler, 1 + 1); in sljit_emit_op0()
1010 FAIL_IF(!inst); in sljit_emit_op0()
1012 *inst = CDQ; in sljit_emit_op0()
1014 inst = (sljit_u8*)ensure_buf(compiler, 1 + 2); in sljit_emit_op0()
1015 FAIL_IF(!inst); in sljit_emit_op0()
1017 *inst++ = REX_W; in sljit_emit_op0()
1018 *inst = CDQ; in sljit_emit_op0()
1024 inst = (sljit_u8*)ensure_buf(compiler, 1 + 2); in sljit_emit_op0()
1025 FAIL_IF(!inst); in sljit_emit_op0()
1027 *inst++ = GROUP_F7; in sljit_emit_op0()
1028 *inst = MOD_REG | ((op >= SLJIT_DIVMOD_UW) ? reg_map[TMP_REG1] : reg_map[SLJIT_R1]); in sljit_emit_op0()
1035 inst = (sljit_u8*)ensure_buf(compiler, 1 + size); in sljit_emit_op0()
1036 FAIL_IF(!inst); in sljit_emit_op0()
1040 *inst++ = REX_W | ((op >= SLJIT_DIVMOD_UW) ? REX_B : 0); in sljit_emit_op0()
1042 *inst++ = REX_B; in sljit_emit_op0()
1043 *inst++ = GROUP_F7; in sljit_emit_op0()
1044 *inst = MOD_REG | ((op >= SLJIT_DIVMOD_UW) ? reg_lmap[TMP_REG1] : reg_lmap[SLJIT_R1]); in sljit_emit_op0()
1047 *inst++ = REX_W; in sljit_emit_op0()
1048 *inst++ = GROUP_F7; in sljit_emit_op0()
1049 *inst = MOD_REG | reg_map[SLJIT_R1]; in sljit_emit_op0()
1054 *inst |= MUL; in sljit_emit_op0()
1057 *inst |= IMUL; in sljit_emit_op0()
1061 *inst |= DIV; in sljit_emit_op0()
1065 *inst |= IDIV; in sljit_emit_op0()
1087 inst = (sljit_u8*)ensure_buf(compiler, 1 + 1); \
1088 FAIL_IF(!inst); \
1090 *inst = (prefix); \
1097 sljit_u8* inst; in emit_mov_byte() local
1112 inst = emit_x86_instruction(compiler, 1, SLJIT_IMM, srcw, dst, 0); in emit_mov_byte()
1113 FAIL_IF(!inst); in emit_mov_byte()
1114 *inst = MOV_rm_i32; in emit_mov_byte()
1118inst = emit_x86_instruction(compiler, 1 | EX86_BYTE_ARG | EX86_NO_REXW, SLJIT_IMM, srcw, dst, dstw… in emit_mov_byte()
1119 FAIL_IF(!inst); in emit_mov_byte()
1120 *inst = MOV_rm8_i8; in emit_mov_byte()
1144 inst = emit_x86_instruction(compiler, 2, dst, 0, dst, 0); in emit_mov_byte()
1145 FAIL_IF(!inst); in emit_mov_byte()
1146 *inst++ = GROUP_0F; in emit_mov_byte()
1147 *inst = sign ? MOVSX_r_rm8 : MOVZX_r_rm8; in emit_mov_byte()
1154 inst = emit_x86_instruction(compiler, 1 | EX86_SHIFT_INS, SLJIT_IMM, 24, dst, 0); in emit_mov_byte()
1155 FAIL_IF(!inst); in emit_mov_byte()
1156 *inst |= SHL; in emit_mov_byte()
1158 inst = emit_x86_instruction(compiler, 1 | EX86_SHIFT_INS, SLJIT_IMM, 24, dst, 0); in emit_mov_byte()
1159 FAIL_IF(!inst); in emit_mov_byte()
1160 *inst |= SAR; in emit_mov_byte()
1163 inst = emit_x86_instruction(compiler, 1 | EX86_BIN_INS, SLJIT_IMM, 0xff, dst, 0); in emit_mov_byte()
1164 FAIL_IF(!inst); in emit_mov_byte()
1165 *(inst + 1) |= AND; in emit_mov_byte()
1173 inst = emit_x86_instruction(compiler, 2, dst_r, 0, src, srcw); in emit_mov_byte()
1174 FAIL_IF(!inst); in emit_mov_byte()
1175 *inst++ = GROUP_0F; in emit_mov_byte()
1176 *inst = sign ? MOVSX_r_rm8 : MOVZX_r_rm8; in emit_mov_byte()
1202 inst = emit_x86_instruction(compiler, 1, work_r, 0, dst_r, 0); in emit_mov_byte()
1203 FAIL_IF(!inst); in emit_mov_byte()
1204 *inst = XCHG_r_rm; in emit_mov_byte()
1207 inst = emit_x86_instruction(compiler, 1, work_r, 0, dst, dstw); in emit_mov_byte()
1208 FAIL_IF(!inst); in emit_mov_byte()
1209 *inst = MOV_rm8_r8; in emit_mov_byte()
1215 inst = emit_x86_instruction(compiler, 1, work_r, 0, dst_r, 0); in emit_mov_byte()
1216 FAIL_IF(!inst); in emit_mov_byte()
1217 *inst = XCHG_r_rm; in emit_mov_byte()
1221 inst = emit_x86_instruction(compiler, 1, dst_r, 0, dst, dstw); in emit_mov_byte()
1222 FAIL_IF(!inst); in emit_mov_byte()
1223 *inst = MOV_rm8_r8; in emit_mov_byte()
1226 inst = emit_x86_instruction(compiler, 1 | EX86_REX | EX86_NO_REXW, dst_r, 0, dst, dstw); in emit_mov_byte()
1227 FAIL_IF(!inst); in emit_mov_byte()
1228 *inst = MOV_rm8_r8; in emit_mov_byte()
1238 sljit_u8* inst; in emit_prefetch() local
1244 inst = emit_x86_instruction(compiler, 2, 0, 0, src, srcw); in emit_prefetch()
1245 FAIL_IF(!inst); in emit_prefetch()
1246 *inst++ = GROUP_0F; in emit_prefetch()
1247 *inst++ = PREFETCH; in emit_prefetch()
1250 *inst |= (1 << 3); in emit_prefetch()
1252 *inst |= (2 << 3); in emit_prefetch()
1254 *inst |= (3 << 3); in emit_prefetch()
1263 sljit_u8* inst; in emit_mov_half() local
1275 inst = emit_x86_instruction(compiler, 1, SLJIT_IMM, srcw, dst, 0); in emit_mov_half()
1276 FAIL_IF(!inst); in emit_mov_half()
1277 *inst = MOV_rm_i32; in emit_mov_half()
1281inst = emit_x86_instruction(compiler, 1 | EX86_HALF_ARG | EX86_NO_REXW | EX86_PREF_66, SLJIT_IMM, … in emit_mov_half()
1282 FAIL_IF(!inst); in emit_mov_half()
1283 *inst = MOV_rm_i32; in emit_mov_half()
1292 inst = emit_x86_instruction(compiler, 2, dst_r, 0, src, srcw); in emit_mov_half()
1293 FAIL_IF(!inst); in emit_mov_half()
1294 *inst++ = GROUP_0F; in emit_mov_half()
1295 *inst = sign ? MOVSX_r_rm16 : MOVZX_r_rm16; in emit_mov_half()
1299 inst = emit_x86_instruction(compiler, 1 | EX86_NO_REXW | EX86_PREF_66, dst_r, 0, dst, dstw); in emit_mov_half()
1300 FAIL_IF(!inst); in emit_mov_half()
1301 *inst = MOV_rm_r; in emit_mov_half()
1311 sljit_u8* inst; in emit_unary() local
1315 inst = emit_x86_instruction(compiler, 1, 0, 0, dst, dstw); in emit_unary()
1316 FAIL_IF(!inst); in emit_unary()
1317 *inst++ = GROUP_F7; in emit_unary()
1318 *inst |= opcode; in emit_unary()
1327 inst = emit_x86_instruction(compiler, 1, 0, 0, dst, 0); in emit_unary()
1328 FAIL_IF(!inst); in emit_unary()
1329 *inst++ = GROUP_F7; in emit_unary()
1330 *inst |= opcode; in emit_unary()
1335 inst = emit_x86_instruction(compiler, 1, 0, 0, TMP_REG1, 0); in emit_unary()
1336 FAIL_IF(!inst); in emit_unary()
1337 *inst++ = GROUP_F7; in emit_unary()
1338 *inst |= opcode; in emit_unary()
1347 sljit_u8* inst; in emit_not_with_flags() local
1354 inst = emit_x86_instruction(compiler, 1, 0, 0, dst, 0); in emit_not_with_flags()
1355 FAIL_IF(!inst); in emit_not_with_flags()
1356 *inst++ = GROUP_F7; in emit_not_with_flags()
1357 *inst |= NOT_rm; in emit_not_with_flags()
1358 inst = emit_x86_instruction(compiler, 1, dst, 0, dst, 0); in emit_not_with_flags()
1359 FAIL_IF(!inst); in emit_not_with_flags()
1360 *inst = OR_r_rm; in emit_not_with_flags()
1365 inst = emit_x86_instruction(compiler, 1, 0, 0, TMP_REG1, 0); in emit_not_with_flags()
1366 FAIL_IF(!inst); in emit_not_with_flags()
1367 *inst++ = GROUP_F7; in emit_not_with_flags()
1368 *inst |= NOT_rm; in emit_not_with_flags()
1369 inst = emit_x86_instruction(compiler, 1, TMP_REG1, 0, TMP_REG1, 0); in emit_not_with_flags()
1370 FAIL_IF(!inst); in emit_not_with_flags()
1371 *inst = OR_r_rm; in emit_not_with_flags()
1384 sljit_u8* inst; in emit_clz() local
1394 inst = emit_x86_instruction(compiler, 2, dst_r, 0, src, srcw); in emit_clz()
1395 FAIL_IF(!inst); in emit_clz()
1396 *inst++ = GROUP_0F; in emit_clz()
1397 *inst = BSR_r_rm; in emit_clz()
1403 inst = emit_x86_instruction(compiler, 2, dst_r, 0, TMP_REG1, 0); in emit_clz()
1406 inst = emit_x86_instruction(compiler, 2, dst_r, 0, SLJIT_MEM0(), (sljit_sw)&emit_clz_arg); in emit_clz()
1408 FAIL_IF(!inst); in emit_clz()
1409 *inst++ = GROUP_0F; in emit_clz()
1410 *inst = CMOVE_r_rm; in emit_clz()
1415 inst = emit_x86_instruction(compiler, 1 | EX86_BIN_INS, SLJIT_IMM, 31, dst_r, 0); in emit_clz()
1420 inst = emit_x86_instruction(compiler, 2, dst_r, 0, TMP_REG2, 0); in emit_clz()
1421 FAIL_IF(!inst); in emit_clz()
1422 *inst++ = GROUP_0F; in emit_clz()
1423 *inst = CMOVE_r_rm; in emit_clz()
1428inst = emit_x86_instruction(compiler, 1 | EX86_BIN_INS, SLJIT_IMM, !(op_flags & SLJIT_I32_OP) ? 63… in emit_clz()
1431 FAIL_IF(!inst); in emit_clz()
1432 *(inst + 1) |= XOR; in emit_clz()
1578 inst = emit_x86_instruction(compiler, 1 | EX86_BIN_INS, SLJIT_IMM, immw, arg, argw); \
1579 FAIL_IF(!inst); \
1580 *(inst + 1) |= (op_imm); \
1584 inst = emit_x86_instruction(compiler, 1, (arg == TMP_REG1) ? TMP_REG2 : TMP_REG1, 0, arg, argw); \
1585 FAIL_IF(!inst); \
1586 *inst = (op_mr); \
1595 inst = emit_x86_instruction(compiler, 1 | EX86_BIN_INS, SLJIT_IMM, immw, arg, argw); \
1596 FAIL_IF(!inst); \
1597 *(inst + 1) |= (op_imm);
1610 sljit_u8* inst; local
1622 inst = emit_x86_instruction(compiler, 1, TMP_REG1, 0, src2, src2w);
1623 FAIL_IF(!inst);
1624 *inst = op_rm;
1643 inst = emit_x86_instruction(compiler, 1, dst, dstw, src2, src2w);
1644 FAIL_IF(!inst);
1645 *inst = op_rm;
1649 inst = emit_x86_instruction(compiler, 1, src2, src2w, dst, dstw);
1650 FAIL_IF(!inst);
1651 *inst = op_mr;
1655 inst = emit_x86_instruction(compiler, 1, TMP_REG1, 0, dst, dstw);
1656 FAIL_IF(!inst);
1657 *inst = op_mr;
1677 inst = emit_x86_instruction(compiler, 1, dst, dstw, src1, src1w);
1678 FAIL_IF(!inst);
1679 *inst = op_rm;
1682 inst = emit_x86_instruction(compiler, 1, src1, src1w, dst, dstw);
1683 FAIL_IF(!inst);
1684 *inst = op_mr;
1688 inst = emit_x86_instruction(compiler, 1, TMP_REG1, 0, dst, dstw);
1689 FAIL_IF(!inst);
1690 *inst = op_mr;
1702 inst = emit_x86_instruction(compiler, 1, dst, 0, src2, src2w);
1703 FAIL_IF(!inst);
1704 *inst = op_rm;
1714 inst = emit_x86_instruction(compiler, 1, TMP_REG1, 0, src2, src2w);
1715 FAIL_IF(!inst);
1716 *inst = op_rm;
1730 sljit_u8* inst; local
1742 inst = emit_x86_instruction(compiler, 1, TMP_REG1, 0, src2, src2w);
1743 FAIL_IF(!inst);
1744 *inst = op_rm;
1763 inst = emit_x86_instruction(compiler, 1, dst, dstw, src2, src2w);
1764 FAIL_IF(!inst);
1765 *inst = op_rm;
1768 inst = emit_x86_instruction(compiler, 1, src2, src2w, dst, dstw);
1769 FAIL_IF(!inst);
1770 *inst = op_mr;
1774 inst = emit_x86_instruction(compiler, 1, TMP_REG1, 0, dst, dstw);
1775 FAIL_IF(!inst);
1776 *inst = op_mr;
1788 inst = emit_x86_instruction(compiler, 1, dst, 0, src2, src2w);
1789 FAIL_IF(!inst);
1790 *inst = op_rm;
1800 inst = emit_x86_instruction(compiler, 1, TMP_REG1, 0, src2, src2w);
1801 FAIL_IF(!inst);
1802 *inst = op_rm;
1815 sljit_u8* inst; local
1822 inst = emit_x86_instruction(compiler, 2, dst_r, 0, src2, src2w);
1823 FAIL_IF(!inst);
1824 *inst++ = GROUP_0F;
1825 *inst = IMUL_r_rm;
1828 inst = emit_x86_instruction(compiler, 2, dst_r, 0, src1, src1w);
1829 FAIL_IF(!inst);
1830 *inst++ = GROUP_0F;
1831 *inst = IMUL_r_rm;
1841 inst = emit_x86_instruction(compiler, 1, dst_r, 0, src2, src2w);
1842 FAIL_IF(!inst);
1843 *inst = IMUL_r_rm_i8;
1844 inst = (sljit_u8*)ensure_buf(compiler, 1 + 1);
1845 FAIL_IF(!inst);
1847 *inst = (sljit_s8)src1w;
1851 inst = emit_x86_instruction(compiler, 1, dst_r, 0, src2, src2w);
1852 FAIL_IF(!inst);
1853 *inst = IMUL_r_rm_i32;
1854 inst = (sljit_u8*)ensure_buf(compiler, 1 + 4);
1855 FAIL_IF(!inst);
1857 sljit_unaligned_store_sw(inst, src1w);
1861 inst = emit_x86_instruction(compiler, 1, dst_r, 0, src2, src2w);
1862 FAIL_IF(!inst);
1863 *inst = IMUL_r_rm_i32;
1864 inst = (sljit_u8*)ensure_buf(compiler, 1 + 4);
1865 FAIL_IF(!inst);
1867 sljit_unaligned_store_s32(inst, (sljit_s32)src1w);
1873 inst = emit_x86_instruction(compiler, 2, dst_r, 0, TMP_REG2, 0);
1874 FAIL_IF(!inst);
1875 *inst++ = GROUP_0F;
1876 *inst = IMUL_r_rm;
1884 inst = emit_x86_instruction(compiler, 1, dst_r, 0, src1, src1w);
1885 FAIL_IF(!inst);
1886 *inst = IMUL_r_rm_i8;
1887 inst = (sljit_u8*)ensure_buf(compiler, 1 + 1);
1888 FAIL_IF(!inst);
1890 *inst = (sljit_s8)src2w;
1894 inst = emit_x86_instruction(compiler, 1, dst_r, 0, src1, src1w);
1895 FAIL_IF(!inst);
1896 *inst = IMUL_r_rm_i32;
1897 inst = (sljit_u8*)ensure_buf(compiler, 1 + 4);
1898 FAIL_IF(!inst);
1900 sljit_unaligned_store_sw(inst, src2w);
1904 inst = emit_x86_instruction(compiler, 1, dst_r, 0, src1, src1w);
1905 FAIL_IF(!inst);
1906 *inst = IMUL_r_rm_i32;
1907 inst = (sljit_u8*)ensure_buf(compiler, 1 + 4);
1908 FAIL_IF(!inst);
1910 sljit_unaligned_store_s32(inst, (sljit_s32)src2w);
1916 inst = emit_x86_instruction(compiler, 2, dst_r, 0, TMP_REG2, 0);
1917 FAIL_IF(!inst);
1918 *inst++ = GROUP_0F;
1919 *inst = IMUL_r_rm;
1928 inst = emit_x86_instruction(compiler, 2, dst_r, 0, src2, src2w);
1929 FAIL_IF(!inst);
1930 *inst++ = GROUP_0F;
1931 *inst = IMUL_r_rm;
1945 sljit_u8* inst; local
1958 inst = emit_x86_instruction(compiler, 1, dst_r, 0, SLJIT_MEM2(src1, src2), 0);
1959 FAIL_IF(!inst);
1960 *inst = LEA_r_m;
1965 inst = emit_x86_instruction(compiler, 1, dst_r, 0, SLJIT_MEM1(src1), (sljit_s32)src2w);
1968 inst = emit_x86_instruction(compiler, 1, dst_r, 0, SLJIT_MEM1(src1), src2w);
1970 FAIL_IF(!inst);
1971 *inst = LEA_r_m;
1978 inst = emit_x86_instruction(compiler, 1, dst_r, 0, SLJIT_MEM1(src2), (sljit_s32)src1w);
1981 inst = emit_x86_instruction(compiler, 1, dst_r, 0, SLJIT_MEM1(src2), src1w);
1983 FAIL_IF(!inst);
1984 *inst = LEA_r_m;
2001 sljit_u8* inst; local
2017 inst = emit_x86_instruction(compiler, 1, src1, 0, src2, src2w);
2018 FAIL_IF(!inst);
2019 *inst = CMP_r_rm;
2025 inst = emit_x86_instruction(compiler, 1, src2, 0, src1, src1w);
2026 FAIL_IF(!inst);
2027 *inst = CMP_rm_r;
2041 inst = emit_x86_instruction(compiler, 1, TMP_REG1, 0, src2, src2w);
2042 FAIL_IF(!inst);
2043 *inst = CMP_r_rm;
2052 sljit_u8* inst; local
2076 inst = emit_x86_instruction(compiler, 1, SLJIT_IMM, src2w, src1, src1w);
2077 FAIL_IF(!inst);
2078 *inst = GROUP_F7;
2082 inst = emit_x86_instruction(compiler, 1, TMP_REG1, 0, src1, src1w);
2083 FAIL_IF(!inst);
2084 *inst = TEST_rm_r;
2087 inst = emit_x86_instruction(compiler, 1, SLJIT_IMM, src2w, src1, src1w);
2088 FAIL_IF(!inst);
2089 *inst = GROUP_F7;
2094 inst = emit_x86_instruction(compiler, 1, src1, 0, src2, src2w);
2095 FAIL_IF(!inst);
2096 *inst = TEST_rm_r;
2105 inst = emit_x86_instruction(compiler, 1, SLJIT_IMM, src1w, src2, src2w);
2106 FAIL_IF(!inst);
2107 *inst = GROUP_F7;
2111 inst = emit_x86_instruction(compiler, 1, TMP_REG1, 0, src2, src2w);
2112 FAIL_IF(!inst);
2113 *inst = TEST_rm_r;
2116 inst = emit_x86_instruction(compiler, 1, src1, src1w, src2, src2w);
2117 FAIL_IF(!inst);
2118 *inst = GROUP_F7;
2123 inst = emit_x86_instruction(compiler, 1, src2, 0, src1, src1w);
2124 FAIL_IF(!inst);
2125 *inst = TEST_rm_r;
2134 inst = emit_x86_instruction(compiler, 1, SLJIT_IMM, src2w, TMP_REG1, 0);
2135 FAIL_IF(!inst);
2136 *inst = GROUP_F7;
2140 inst = emit_x86_instruction(compiler, 1, TMP_REG2, 0, TMP_REG1, 0);
2141 FAIL_IF(!inst);
2142 *inst = TEST_rm_r;
2145 inst = emit_x86_instruction(compiler, 1, SLJIT_IMM, src2w, TMP_REG1, 0);
2146 FAIL_IF(!inst);
2147 *inst = GROUP_F7;
2151 inst = emit_x86_instruction(compiler, 1, TMP_REG1, 0, src2, src2w);
2152 FAIL_IF(!inst);
2153 *inst = TEST_rm_r;
2164 sljit_u8* inst; local
2168 inst = emit_x86_instruction(compiler, 1 | EX86_SHIFT_INS, src2, src2w, dst, dstw);
2169 FAIL_IF(!inst);
2170 *inst |= mode;
2175 inst = emit_x86_instruction(compiler, 1 | EX86_SHIFT_INS, src2, src2w, TMP_REG1, 0);
2176 FAIL_IF(!inst);
2177 *inst |= mode;
2182 inst = emit_x86_instruction(compiler, 1 | EX86_SHIFT_INS, SLJIT_PREF_SHIFT_REG, 0, TMP_REG1, 0);
2183 FAIL_IF(!inst);
2184 *inst |= mode;
2190 inst = emit_x86_instruction(compiler, 1 | EX86_SHIFT_INS, src2, src2w, dst, 0);
2191 FAIL_IF(!inst);
2192 *inst |= mode;
2197 inst = emit_x86_instruction(compiler, 1 | EX86_SHIFT_INS, src2, src2w, TMP_REG1, 0);
2198 FAIL_IF(!inst);
2199 *inst |= mode;
2207 inst = emit_x86_instruction(compiler, 1 | EX86_SHIFT_INS, SLJIT_PREF_SHIFT_REG, 0, TMP_REG1, 0);
2208 FAIL_IF(!inst);
2209 *inst |= mode;
2217 inst = emit_x86_instruction(compiler, 1 | EX86_SHIFT_INS, SLJIT_PREF_SHIFT_REG, 0, dst, 0);
2218 FAIL_IF(!inst);
2219 *inst |= mode;
2229 inst = emit_x86_instruction(compiler, 1 | EX86_SHIFT_INS, SLJIT_PREF_SHIFT_REG, 0, TMP_REG1, 0);
2230 FAIL_IF(!inst);
2231 *inst |= mode;
2236 inst = emit_x86_instruction(compiler, 1 | EX86_SHIFT_INS, SLJIT_PREF_SHIFT_REG, 0, TMP_REG1, 0);
2237 FAIL_IF(!inst);
2238 *inst |= mode;
2409 sljit_u8 *inst; local
2414 inst = (sljit_u8*)ensure_buf(compiler, 1 + size);
2415 FAIL_IF(!inst);
2417 SLJIT_MEMCPY(inst, instruction, size);
2447 sljit_u8 *inst; local
2449inst = emit_x86_instruction(compiler, 2 | (single ? EX86_PREF_F3 : EX86_PREF_F2) | EX86_SSE2, xmm1…
2450 FAIL_IF(!inst);
2451 *inst++ = GROUP_0F;
2452 *inst = opcode;
2459 sljit_u8 *inst; local
2461inst = emit_x86_instruction(compiler, 2 | (pref66 ? EX86_PREF_66 : 0) | EX86_SSE2, xmm1, 0, xmm2, …
2462 FAIL_IF(!inst);
2463 *inst++ = GROUP_0F;
2464 *inst = opcode;
2485 sljit_u8 *inst; local
2492inst = emit_x86_instruction(compiler, 2 | ((op & SLJIT_F32_OP) ? EX86_PREF_F3 : EX86_PREF_F2) | EX…
2493 FAIL_IF(!inst);
2494 *inst++ = GROUP_0F;
2495 *inst = CVTTSD2SI_r_xm;
2507 sljit_u8 *inst; local
2524inst = emit_x86_instruction(compiler, 2 | ((op & SLJIT_F32_OP) ? EX86_PREF_F3 : EX86_PREF_F2) | EX…
2525 FAIL_IF(!inst);
2526 *inst++ = GROUP_0F;
2527 *inst = CVTSI2SD_x_rm;
2682 sljit_u8 *inst; local
2695 inst = (sljit_u8*)ensure_buf(compiler, 2);
2696 PTR_FAIL_IF(!inst);
2698 *inst++ = 0;
2699 *inst++ = 0;
2706 sljit_u8 *inst; local
2724 inst = (sljit_u8*)ensure_buf(compiler, 2);
2725 PTR_FAIL_IF_NULL(inst);
2727 *inst++ = 0;
2728 *inst++ = 1;
2734 sljit_u8 *inst; local
2756 inst = (sljit_u8*)ensure_buf(compiler, 2);
2757 FAIL_IF_NULL(inst);
2759 *inst++ = 0;
2760 *inst++ = 1;
2767 inst = emit_x86_instruction(compiler, 1, 0, 0, src, srcw);
2768 FAIL_IF(!inst);
2769 *inst++ = GROUP_FF;
2770 *inst |= (type >= SLJIT_FAST_CALL) ? CALL_rm : JMP_rm;
2779 sljit_u8 *inst; local
2800 inst = (sljit_u8*)ensure_buf(compiler, 1 + 4 + 3);
2801 FAIL_IF(!inst);
2804 *inst++ = (reg_map[TMP_REG1] <= 7) ? REX : REX_B;
2805 *inst++ = GROUP_0F;
2806 *inst++ = cond_set;
2807 *inst++ = MOD_REG | reg_lmap[TMP_REG1];
2808 *inst++ = REX | (reg_map[TMP_REG1] <= 7 ? 0 : REX_R) | (reg_map[dst] <= 7 ? 0 : REX_B);
2809 *inst++ = OR_rm8_r8;
2810 *inst++ = MOD_REG | (reg_lmap[TMP_REG1] << 3) | reg_lmap[dst];
2816 inst = (sljit_u8*)ensure_buf(compiler, 1 + 4 + 4);
2817 FAIL_IF(!inst);
2820 *inst++ = (reg_map[reg] <= 7) ? REX : REX_B;
2821 *inst++ = GROUP_0F;
2822 *inst++ = cond_set;
2823 *inst++ = MOD_REG | reg_lmap[reg];
2824 *inst++ = REX_W | (reg_map[reg] <= 7 ? 0 : (REX_B | REX_R));
2826 *inst++ = GROUP_0F;
2827 *inst++ = MOVZX_r_rm8;
2828 *inst = MOD_REG | (reg_lmap[reg] << 3) | reg_lmap[reg];
2849 inst = (sljit_u8*)ensure_buf(compiler, 1 + 3 + 3);
2850 FAIL_IF(!inst);
2853 *inst++ = GROUP_0F;
2854 *inst++ = cond_set;
2855 *inst++ = MOD_REG | reg_map[dst];
2857 *inst++ = GROUP_0F;
2858 *inst++ = MOVZX_r_rm8;
2859 *inst = MOD_REG | (reg_map[dst] << 3) | reg_map[dst];
2872 inst = (sljit_u8*)ensure_buf(compiler, 1 + 3);
2873 FAIL_IF(!inst);
2876 *inst++ = GROUP_0F;
2878 *inst++ = cond_set - 0x50;
2879 *inst++ = MOD_REG | (reg_map[dst] << 3) | reg_map[TMP_REG1];
2883 inst = (sljit_u8*)ensure_buf(compiler, 1 + 1 + 3 + 3 + 1);
2884 FAIL_IF(!inst);
2886 *inst++ = XCHG_EAX_r + reg_map[TMP_REG1];
2888 *inst++ = GROUP_0F;
2889 *inst++ = cond_set;
2890 *inst++ = MOD_REG | 0 /* eax */;
2892 *inst++ = GROUP_0F;
2893 *inst++ = MOVZX_r_rm8;
2894 *inst++ = MOD_REG | (reg_map[dst] << 3) | 0 /* eax */;
2895 *inst++ = XCHG_EAX_r + reg_map[TMP_REG1];
2903 inst = (sljit_u8*)ensure_buf(compiler, 1 + 1 + 3 + 2 + 1);
2904 FAIL_IF(!inst);
2907 *inst++ = XCHG_EAX_r + reg_map[TMP_REG1];
2908 *inst++ = GROUP_0F;
2909 *inst++ = cond_set;
2910 *inst++ = MOD_REG | 0 /* eax */;
2911 *inst++ = OR_rm8_r8;
2912 *inst++ = MOD_REG | (0 /* eax */ << 3) | reg_map[dst];
2913 *inst++ = XCHG_EAX_r + reg_map[TMP_REG1];
2916 inst = (sljit_u8*)ensure_buf(compiler, 1 + 2 + 3 + 2 + 2);
2917 FAIL_IF(!inst);
2920 *inst++ = XCHG_r_rm;
2921 *inst++ = MOD_REG | (1 /* ecx */ << 3) | reg_map[TMP_REG1];
2922 *inst++ = GROUP_0F;
2923 *inst++ = cond_set;
2924 *inst++ = MOD_REG | 1 /* ecx */;
2925 *inst++ = OR_rm8_r8;
2926 *inst++ = MOD_REG | (1 /* ecx */ << 3) | 0 /* eax */;
2927 *inst++ = XCHG_r_rm;
2928 *inst++ = MOD_REG | (1 /* ecx */ << 3) | reg_map[TMP_REG1];
2934 inst = (sljit_u8*)ensure_buf(compiler, 1 + 1 + 3 + 3 + 1);
2935 FAIL_IF(!inst);
2937 *inst++ = XCHG_EAX_r + reg_map[TMP_REG1];
2939 *inst++ = GROUP_0F;
2940 *inst++ = cond_set;
2941 *inst++ = MOD_REG | 0 /* eax */;
2943 *inst++ = GROUP_0F;
2944 *inst++ = MOVZX_r_rm8;
2945 *inst++ = MOD_REG | (0 << 3) /* eax */ | 0 /* eax */;
2947 *inst++ = XCHG_EAX_r + reg_map[TMP_REG1];
2964 sljit_u8* inst; local
2993 inst = emit_x86_instruction(compiler, 2, dst_reg, 0, src, srcw);
2994 FAIL_IF(!inst);
2995 *inst++ = GROUP_0F;
2996 *inst = get_jump_code(type & 0xff) - 0x40;
3033 sljit_u8 *inst; local
3060 inst = (sljit_u8*)ensure_buf(compiler, 2);
3061 PTR_FAIL_IF(!inst);
3063 *inst++ = 0;
3064 *inst++ = 2;
3078 sljit_u8 *inst; local
3114 inst = (sljit_u8*)ensure_buf(compiler, 2);
3115 PTR_FAIL_IF(!inst);
3117 *inst++ = 0;
3118 *inst++ = 3;