summaryrefslogtreecommitdiff
path: root/src/buildvm_x86.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/buildvm_x86.h')
-rw-r--r--src/buildvm_x86.h656
1 files changed, 328 insertions, 328 deletions
diff --git a/src/buildvm_x86.h b/src/buildvm_x86.h
index 0cbf9c68..5bf7e60c 100644
--- a/src/buildvm_x86.h
+++ b/src/buildvm_x86.h
@@ -12,7 +12,7 @@
12#define DASM_SECTION_CODE_OP 0 12#define DASM_SECTION_CODE_OP 0
13#define DASM_SECTION_CODE_SUB 1 13#define DASM_SECTION_CODE_SUB 1
14#define DASM_MAXSECTION 2 14#define DASM_MAXSECTION 2
15static const unsigned char build_actionlist[15179] = { 15static const unsigned char build_actionlist[15177] = {
16 254,1,248,10,252,247,198,237,15,132,244,11,131,230,252,248,41,252,242,141, 16 254,1,248,10,252,247,198,237,15,132,244,11,131,230,252,248,41,252,242,141,
17 76,49,252,248,139,114,252,252,199,68,10,4,237,248,12,131,192,1,137,68,36, 17 76,49,252,248,139,114,252,252,199,68,10,4,237,248,12,131,192,1,137,68,36,
18 20,252,247,198,237,15,132,244,13,248,14,252,247,198,237,15,132,244,10,199, 18 20,252,247,198,237,15,132,244,13,248,14,252,247,198,237,15,132,244,10,199,
@@ -417,20 +417,20 @@ static const unsigned char build_actionlist[15179] = {
417 252,242,15,17,109,200,252,242,15,17,101,192,252,242,15,17,93,184,252,242, 417 252,242,15,17,109,200,252,242,15,17,101,192,252,242,15,17,93,184,252,242,
418 15,17,85,176,252,242,15,17,77,168,252,242,15,17,69,160,139,171,233,139,147, 418 15,17,85,176,252,242,15,17,77,168,252,242,15,17,69,160,139,171,233,139,147,
419 233,137,171,233,137,149,233,141,84,36,16,141,139,233,232,251,1,23,139,141, 419 233,137,171,233,137,149,233,141,84,36,16,141,139,233,232,251,1,23,139,141,
420 233,129,225,239,137,204,137,108,36,48,133,192,15,133,244,247,139,149,233, 420 233,129,225,239,137,204,137,169,233,139,149,233,139,177,233,133,192,15,133,
421 139,116,36,24,255,248,144,255,139,122,252,248,139,191,233,139,191,233,199, 421 244,248,255,248,144,255,139,122,252,248,139,191,233,139,191,233,199,131,233,
422 131,233,0,0,0,0,199,131,233,237,139,6,15,182,204,15,182,232,131,198,4,193, 422 0,0,0,0,199,131,233,237,139,6,15,182,204,15,182,232,131,198,4,193,232,16,
423 232,16,252,255,36,171,248,1,137,252,233,137,194,232,251,1,24,255,248,82,255, 423 252,255,36,171,248,2,137,252,233,137,194,232,251,1,24,255,248,82,255,217,
424 217,124,36,4,137,68,36,8,102,184,0,4,102,11,68,36,4,102,37,252,255,252,247, 424 124,36,4,137,68,36,8,102,184,0,4,102,11,68,36,4,102,37,252,255,252,247,102,
425 102,137,68,36,6,217,108,36,6,217,252,252,217,108,36,4,139,68,36,8,195,255, 425 137,68,36,6,217,108,36,6,217,252,252,217,108,36,4,139,68,36,8,195,255,248,
426 248,145,102,15,252,239,210,102,15,118,210,102,15,115,210,1,184,0,0,48,67, 426 145,102,15,252,239,210,102,15,118,210,102,15,115,210,1,184,0,0,48,67,102,
427 102,15,110,216,102,15,112,219,81,15,40,200,102,15,84,202,102,15,46,217,15, 427 15,110,216,102,15,112,219,81,15,40,200,102,15,84,202,102,15,46,217,15,134,
428 134,244,247,102,15,85,208,252,242,15,88,203,252,242,15,92,203,102,15,86,202, 428 244,247,102,15,85,208,252,242,15,88,203,252,242,15,92,203,102,15,86,202,184,
429 184,0,0,252,240,63,102,15,110,208,102,15,112,210,81,252,242,15,194,193,1, 429 0,0,252,240,63,102,15,110,208,102,15,112,210,81,252,242,15,194,193,1,102,
430 102,15,84,194,252,242,15,92,200,15,40,193,248,1,195,248,84,255,217,124,36, 430 15,84,194,252,242,15,92,200,15,40,193,248,1,195,248,84,255,217,124,36,4,137,
431 4,137,68,36,8,102,184,0,8,102,11,68,36,4,102,37,252,255,252,251,102,137,68, 431 68,36,8,102,184,0,8,102,11,68,36,4,102,37,252,255,252,251,102,137,68,36,6,
432 36,6,217,108,36,6,217,252,252,217,108,36,4,139,68,36,8,195,255,248,146,102, 432 217,108,36,6,217,252,252,217,108,36,4,139,68,36,8,195,255,248,146,102,15,
433 15,252,239,210,102,15,118,210,102,15,115,210,1,184,0,0,48,67,102,15,110,216, 433 252,239,210,102,15,118,210,102,15,115,210,1,184,0,0,48,67,102,15,110,216,
434 102,15,112,219,81,15,40,200,102,15,84,202,102,15,46,217,15,134,244,247,102, 434 102,15,112,219,81,15,40,200,102,15,84,202,102,15,46,217,15,134,244,247,102,
435 15,85,208,252,242,15,88,203,252,242,15,92,203,102,15,86,202,184,0,0,252,240, 435 15,85,208,252,242,15,88,203,252,242,15,92,203,102,15,86,202,184,0,0,252,240,
436 191,102,15,110,208,102,15,112,210,81,252,242,15,194,193,6,102,15,84,194,252, 436 191,102,15,110,208,102,15,112,210,81,252,242,15,194,193,6,102,15,84,194,252,
@@ -1454,91 +1454,91 @@ static void build_subroutines(BuildCtx *ctx, int cmov, int sse)
1454#endif 1454#endif
1455 dasm_put(Dst, 8218, Dt1(->base), Dt1(->top)); 1455 dasm_put(Dst, 8218, Dt1(->base), Dt1(->top));
1456#if LJ_HASJIT 1456#if LJ_HASJIT
1457 dasm_put(Dst, 8247, DISPATCH_GL(vmstate), DISPATCH_GL(vmstate), ~LJ_VMST_EXIT, DISPATCH_J(exitno), DISPATCH_J(parent), 8*8+16, DISPATCH_GL(jit_L), DISPATCH_GL(jit_base), DISPATCH_J(L), Dt1(->base), GG_DISP2J, Dt1(->cframe), CFRAME_RAWMASK, Dt1(->base)); 1457 dasm_put(Dst, 8247, DISPATCH_GL(vmstate), DISPATCH_GL(vmstate), ~LJ_VMST_EXIT, DISPATCH_J(exitno), DISPATCH_J(parent), 8*8+16, DISPATCH_GL(jit_L), DISPATCH_GL(jit_base), DISPATCH_J(L), Dt1(->base), GG_DISP2J, Dt1(->cframe), CFRAME_RAWMASK, CFRAME_OFS_L, Dt1(->base), CFRAME_OFS_PC);
1458#endif 1458#endif
1459 dasm_put(Dst, 8391); 1459 dasm_put(Dst, 8389);
1460#if LJ_HASJIT 1460#if LJ_HASJIT
1461 dasm_put(Dst, 8394, Dt7(->pc), PC2PROTO(k), DISPATCH_GL(jit_L), DISPATCH_GL(vmstate), ~LJ_VMST_INTERP); 1461 dasm_put(Dst, 8392, Dt7(->pc), PC2PROTO(k), DISPATCH_GL(jit_L), DISPATCH_GL(vmstate), ~LJ_VMST_INTERP);
1462#endif 1462#endif
1463 dasm_put(Dst, 8445); 1463 dasm_put(Dst, 8443);
1464 if (!sse) { 1464 if (!sse) {
1465 dasm_put(Dst, 8448); 1465 dasm_put(Dst, 8446);
1466 } 1466 }
1467 dasm_put(Dst, 8493); 1467 dasm_put(Dst, 8491);
1468 if (!sse) { 1468 if (!sse) {
1469 dasm_put(Dst, 8595); 1469 dasm_put(Dst, 8593);
1470 } 1470 }
1471 dasm_put(Dst, 8640); 1471 dasm_put(Dst, 8638);
1472 if (!sse) { 1472 if (!sse) {
1473 dasm_put(Dst, 8742); 1473 dasm_put(Dst, 8740);
1474 } 1474 }
1475 dasm_put(Dst, 8781); 1475 dasm_put(Dst, 8779);
1476 if (sse) { 1476 if (sse) {
1477 dasm_put(Dst, 8886); 1477 dasm_put(Dst, 8884);
1478 } else { 1478 } else {
1479 dasm_put(Dst, 9016); 1479 dasm_put(Dst, 9014);
1480 } 1480 }
1481 dasm_put(Dst, 9063); 1481 dasm_put(Dst, 9061);
1482 if (!sse) { 1482 if (!sse) {
1483 dasm_put(Dst, 9137); 1483 dasm_put(Dst, 9135);
1484 if (cmov) { 1484 if (cmov) {
1485 dasm_put(Dst, 9148); 1485 dasm_put(Dst, 9146);
1486 } else { 1486 } else {
1487 dasm_put(Dst, 9152); 1487 dasm_put(Dst, 9150);
1488 } 1488 }
1489 dasm_put(Dst, 9159); 1489 dasm_put(Dst, 9157);
1490 dasm_put(Dst, 9233); 1490 dasm_put(Dst, 9231);
1491 dasm_put(Dst, 9333); 1491 dasm_put(Dst, 9331);
1492 if (cmov) { 1492 if (cmov) {
1493 dasm_put(Dst, 9336); 1493 dasm_put(Dst, 9334);
1494 } else { 1494 } else {
1495 dasm_put(Dst, 9340); 1495 dasm_put(Dst, 9338);
1496 } 1496 }
1497 dasm_put(Dst, 9347); 1497 dasm_put(Dst, 9345);
1498 if (cmov) { 1498 if (cmov) {
1499 dasm_put(Dst, 9148); 1499 dasm_put(Dst, 9146);
1500 } else { 1500 } else {
1501 dasm_put(Dst, 9152); 1501 dasm_put(Dst, 9150);
1502 } 1502 }
1503 dasm_put(Dst, 9365); 1503 dasm_put(Dst, 9363);
1504 } else { 1504 } else {
1505 dasm_put(Dst, 9444); 1505 dasm_put(Dst, 9442);
1506 } 1506 }
1507 dasm_put(Dst, 9447); 1507 dasm_put(Dst, 9445);
1508 dasm_put(Dst, 9532); 1508 dasm_put(Dst, 9530);
1509 dasm_put(Dst, 9663); 1509 dasm_put(Dst, 9661);
1510 dasm_put(Dst, 9862); 1510 dasm_put(Dst, 9860);
1511 if (sse) { 1511 if (sse) {
1512 dasm_put(Dst, 9885); 1512 dasm_put(Dst, 9883);
1513 dasm_put(Dst, 9942); 1513 dasm_put(Dst, 9940);
1514 dasm_put(Dst, 10033); 1514 dasm_put(Dst, 10031);
1515 } else { 1515 } else {
1516 dasm_put(Dst, 10075); 1516 dasm_put(Dst, 10073);
1517 dasm_put(Dst, 10167); 1517 dasm_put(Dst, 10165);
1518 } 1518 }
1519 dasm_put(Dst, 10213); 1519 dasm_put(Dst, 10211);
1520 if (sse) { 1520 if (sse) {
1521 dasm_put(Dst, 10219); 1521 dasm_put(Dst, 10217);
1522 dasm_put(Dst, 10324); 1522 dasm_put(Dst, 10322);
1523 dasm_put(Dst, 10407); 1523 dasm_put(Dst, 10405);
1524 } else { 1524 } else {
1525 dasm_put(Dst, 10479); 1525 dasm_put(Dst, 10477);
1526 dasm_put(Dst, 10562); 1526 dasm_put(Dst, 10560);
1527 if (cmov) { 1527 if (cmov) {
1528 dasm_put(Dst, 10617); 1528 dasm_put(Dst, 10615);
1529 } else { 1529 } else {
1530 dasm_put(Dst, 10636); 1530 dasm_put(Dst, 10634);
1531 } 1531 }
1532 dasm_put(Dst, 10475); 1532 dasm_put(Dst, 10473);
1533 } 1533 }
1534 dasm_put(Dst, 10677); 1534 dasm_put(Dst, 10675);
1535} 1535}
1536 1536
1537/* Generate the code for a single instruction. */ 1537/* Generate the code for a single instruction. */
1538static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) 1538static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
1539{ 1539{
1540 int vk = 0; 1540 int vk = 0;
1541 dasm_put(Dst, 10731, defop); 1541 dasm_put(Dst, 10729, defop);
1542 1542
1543 switch (op) { 1543 switch (op) {
1544 1544
@@ -1547,617 +1547,617 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
1547 /* Remember: all ops branch for a true comparison, fall through otherwise. */ 1547 /* Remember: all ops branch for a true comparison, fall through otherwise. */
1548 1548
1549 case BC_ISLT: case BC_ISGE: case BC_ISLE: case BC_ISGT: 1549 case BC_ISLT: case BC_ISGE: case BC_ISLE: case BC_ISGT:
1550 dasm_put(Dst, 10733, LJ_TISNUM, LJ_TISNUM); 1550 dasm_put(Dst, 10731, LJ_TISNUM, LJ_TISNUM);
1551 if (sse) { 1551 if (sse) {
1552 dasm_put(Dst, 10754); 1552 dasm_put(Dst, 10752);
1553 } else { 1553 } else {
1554 dasm_put(Dst, 10769); 1554 dasm_put(Dst, 10767);
1555 if (cmov) { 1555 if (cmov) {
1556 dasm_put(Dst, 10779); 1556 dasm_put(Dst, 10777);
1557 } else { 1557 } else {
1558 dasm_put(Dst, 10785); 1558 dasm_put(Dst, 10783);
1559 } 1559 }
1560 } 1560 }
1561 switch (op) { 1561 switch (op) {
1562 case BC_ISLT: 1562 case BC_ISLT:
1563 dasm_put(Dst, 10792); 1563 dasm_put(Dst, 10790);
1564 break; 1564 break;
1565 case BC_ISGE: 1565 case BC_ISGE:
1566 dasm_put(Dst, 10028); 1566 dasm_put(Dst, 10026);
1567 break; 1567 break;
1568 case BC_ISLE: 1568 case BC_ISLE:
1569 dasm_put(Dst, 6181); 1569 dasm_put(Dst, 6181);
1570 break; 1570 break;
1571 case BC_ISGT: 1571 case BC_ISGT:
1572 dasm_put(Dst, 10797); 1572 dasm_put(Dst, 10795);
1573 break; 1573 break;
1574 default: break; /* Shut up GCC. */ 1574 default: break; /* Shut up GCC. */
1575 } 1575 }
1576 dasm_put(Dst, 10802, -BCBIAS_J*4); 1576 dasm_put(Dst, 10800, -BCBIAS_J*4);
1577 break; 1577 break;
1578 1578
1579 case BC_ISEQV: case BC_ISNEV: 1579 case BC_ISEQV: case BC_ISNEV:
1580 vk = op == BC_ISEQV; 1580 vk = op == BC_ISEQV;
1581 dasm_put(Dst, 10835, LJ_TISNUM, LJ_TISNUM); 1581 dasm_put(Dst, 10833, LJ_TISNUM, LJ_TISNUM);
1582 if (sse) { 1582 if (sse) {
1583 dasm_put(Dst, 10861); 1583 dasm_put(Dst, 10859);
1584 } else { 1584 } else {
1585 dasm_put(Dst, 10873); 1585 dasm_put(Dst, 10871);
1586 if (cmov) { 1586 if (cmov) {
1587 dasm_put(Dst, 10779); 1587 dasm_put(Dst, 10777);
1588 } else { 1588 } else {
1589 dasm_put(Dst, 10785); 1589 dasm_put(Dst, 10783);
1590 } 1590 }
1591 } 1591 }
1592 iseqne_fp: 1592 iseqne_fp:
1593 if (vk) { 1593 if (vk) {
1594 dasm_put(Dst, 10880); 1594 dasm_put(Dst, 10878);
1595 } else { 1595 } else {
1596 dasm_put(Dst, 10889); 1596 dasm_put(Dst, 10887);
1597 } 1597 }
1598 iseqne_end: 1598 iseqne_end:
1599 if (vk) { 1599 if (vk) {
1600 dasm_put(Dst, 10898, -BCBIAS_J*4); 1600 dasm_put(Dst, 10896, -BCBIAS_J*4);
1601 } else { 1601 } else {
1602 dasm_put(Dst, 10913, -BCBIAS_J*4); 1602 dasm_put(Dst, 10911, -BCBIAS_J*4);
1603 } 1603 }
1604 dasm_put(Dst, 10816); 1604 dasm_put(Dst, 10814);
1605 if (op == BC_ISEQV || op == BC_ISNEV) { 1605 if (op == BC_ISEQV || op == BC_ISNEV) {
1606 dasm_put(Dst, 10928, LJ_TISPRI, LJ_TISTABUD, Dt6(->metatable), Dt6(->nomm), 1<<MM_eq); 1606 dasm_put(Dst, 10926, LJ_TISPRI, LJ_TISTABUD, Dt6(->metatable), Dt6(->nomm), 1<<MM_eq);
1607 if (vk) { 1607 if (vk) {
1608 dasm_put(Dst, 10986); 1608 dasm_put(Dst, 10984);
1609 } else { 1609 } else {
1610 dasm_put(Dst, 10990); 1610 dasm_put(Dst, 10988);
1611 } 1611 }
1612 dasm_put(Dst, 10996); 1612 dasm_put(Dst, 10994);
1613 } 1613 }
1614 break; 1614 break;
1615 case BC_ISEQS: case BC_ISNES: 1615 case BC_ISEQS: case BC_ISNES:
1616 vk = op == BC_ISEQS; 1616 vk = op == BC_ISEQS;
1617 dasm_put(Dst, 11001, LJ_TSTR); 1617 dasm_put(Dst, 10999, LJ_TSTR);
1618 iseqne_test: 1618 iseqne_test:
1619 if (vk) { 1619 if (vk) {
1620 dasm_put(Dst, 10884); 1620 dasm_put(Dst, 8384);
1621 } else { 1621 } else {
1622 dasm_put(Dst, 2811); 1622 dasm_put(Dst, 2811);
1623 } 1623 }
1624 goto iseqne_end; 1624 goto iseqne_end;
1625 case BC_ISEQN: case BC_ISNEN: 1625 case BC_ISEQN: case BC_ISNEN:
1626 vk = op == BC_ISEQN; 1626 vk = op == BC_ISEQN;
1627 dasm_put(Dst, 11024, LJ_TISNUM); 1627 dasm_put(Dst, 11022, LJ_TISNUM);
1628 if (sse) { 1628 if (sse) {
1629 dasm_put(Dst, 11038); 1629 dasm_put(Dst, 11036);
1630 } else { 1630 } else {
1631 dasm_put(Dst, 11050); 1631 dasm_put(Dst, 11048);
1632 if (cmov) { 1632 if (cmov) {
1633 dasm_put(Dst, 10779); 1633 dasm_put(Dst, 10777);
1634 } else { 1634 } else {
1635 dasm_put(Dst, 10785); 1635 dasm_put(Dst, 10783);
1636 } 1636 }
1637 } 1637 }
1638 goto iseqne_fp; 1638 goto iseqne_fp;
1639 case BC_ISEQP: case BC_ISNEP: 1639 case BC_ISEQP: case BC_ISNEP:
1640 vk = op == BC_ISEQP; 1640 vk = op == BC_ISEQP;
1641 dasm_put(Dst, 11057); 1641 dasm_put(Dst, 11055);
1642 goto iseqne_test; 1642 goto iseqne_test;
1643 1643
1644 /* -- Unary test and copy ops ------------------------------------------- */ 1644 /* -- Unary test and copy ops ------------------------------------------- */
1645 1645
1646 case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF: 1646 case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF:
1647 dasm_put(Dst, 11068, LJ_TISTRUECOND); 1647 dasm_put(Dst, 11066, LJ_TISTRUECOND);
1648 if (op == BC_IST || op == BC_ISTC) { 1648 if (op == BC_IST || op == BC_ISTC) {
1649 dasm_put(Dst, 11080); 1649 dasm_put(Dst, 11078);
1650 } else { 1650 } else {
1651 dasm_put(Dst, 11085); 1651 dasm_put(Dst, 11083);
1652 } 1652 }
1653 if (op == BC_ISTC || op == BC_ISFC) { 1653 if (op == BC_ISTC || op == BC_ISFC) {
1654 dasm_put(Dst, 11090); 1654 dasm_put(Dst, 11088);
1655 } 1655 }
1656 dasm_put(Dst, 11101, -BCBIAS_J*4); 1656 dasm_put(Dst, 11099, -BCBIAS_J*4);
1657 break; 1657 break;
1658 1658
1659 /* -- Unary ops --------------------------------------------------------- */ 1659 /* -- Unary ops --------------------------------------------------------- */
1660 1660
1661 case BC_MOV: 1661 case BC_MOV:
1662 dasm_put(Dst, 11132); 1662 dasm_put(Dst, 11130);
1663 break; 1663 break;
1664 case BC_NOT: 1664 case BC_NOT:
1665 dasm_put(Dst, 11165, LJ_TISTRUECOND, LJ_TTRUE); 1665 dasm_put(Dst, 11163, LJ_TISTRUECOND, LJ_TTRUE);
1666 break; 1666 break;
1667 case BC_UNM: 1667 case BC_UNM:
1668 dasm_put(Dst, 11200, LJ_TISNUM); 1668 dasm_put(Dst, 11198, LJ_TISNUM);
1669 if (sse) { 1669 if (sse) {
1670 dasm_put(Dst, 11211); 1670 dasm_put(Dst, 11209);
1671 } else { 1671 } else {
1672 dasm_put(Dst, 11241); 1672 dasm_put(Dst, 11239);
1673 } 1673 }
1674 dasm_put(Dst, 10816); 1674 dasm_put(Dst, 10814);
1675 break; 1675 break;
1676 case BC_LEN: 1676 case BC_LEN:
1677 dasm_put(Dst, 11250, LJ_TSTR); 1677 dasm_put(Dst, 11248, LJ_TSTR);
1678 if (sse) { 1678 if (sse) {
1679 dasm_put(Dst, 11264, Dt5(->len)); 1679 dasm_put(Dst, 11262, Dt5(->len));
1680 } else { 1680 } else {
1681 dasm_put(Dst, 11282, Dt5(->len)); 1681 dasm_put(Dst, 11280, Dt5(->len));
1682 } 1682 }
1683 dasm_put(Dst, 11291, LJ_TTAB); 1683 dasm_put(Dst, 11289, LJ_TTAB);
1684 if (sse) { 1684 if (sse) {
1685 dasm_put(Dst, 11331); 1685 dasm_put(Dst, 11329);
1686 } else { 1686 } else {
1687 dasm_put(Dst, 11340); 1687 dasm_put(Dst, 11338);
1688 } 1688 }
1689 dasm_put(Dst, 11350); 1689 dasm_put(Dst, 11348);
1690 break; 1690 break;
1691 1691
1692 /* -- Binary ops -------------------------------------------------------- */ 1692 /* -- Binary ops -------------------------------------------------------- */
1693 1693
1694 1694
1695 case BC_ADDVN: case BC_ADDNV: case BC_ADDVV: 1695 case BC_ADDVN: case BC_ADDNV: case BC_ADDVV:
1696 dasm_put(Dst, 11360); 1696 dasm_put(Dst, 11358);
1697 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1697 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1698 switch (vk) { 1698 switch (vk) {
1699 case 0: 1699 case 0:
1700 dasm_put(Dst, 11368, LJ_TISNUM); 1700 dasm_put(Dst, 11366, LJ_TISNUM);
1701 if (sse) { 1701 if (sse) {
1702 dasm_put(Dst, 11380); 1702 dasm_put(Dst, 11378);
1703 } else { 1703 } else {
1704 dasm_put(Dst, 11394); 1704 dasm_put(Dst, 11392);
1705 } 1705 }
1706 break; 1706 break;
1707 case 1: 1707 case 1:
1708 dasm_put(Dst, 11402, LJ_TISNUM); 1708 dasm_put(Dst, 11400, LJ_TISNUM);
1709 if (sse) { 1709 if (sse) {
1710 dasm_put(Dst, 11414); 1710 dasm_put(Dst, 11412);
1711 } else { 1711 } else {
1712 dasm_put(Dst, 11428); 1712 dasm_put(Dst, 11426);
1713 } 1713 }
1714 break; 1714 break;
1715 default: 1715 default:
1716 dasm_put(Dst, 11436, LJ_TISNUM, LJ_TISNUM); 1716 dasm_put(Dst, 11434, LJ_TISNUM, LJ_TISNUM);
1717 if (sse) { 1717 if (sse) {
1718 dasm_put(Dst, 11458); 1718 dasm_put(Dst, 11456);
1719 } else { 1719 } else {
1720 dasm_put(Dst, 11472); 1720 dasm_put(Dst, 11470);
1721 } 1721 }
1722 break; 1722 break;
1723 } 1723 }
1724 if (sse) { 1724 if (sse) {
1725 dasm_put(Dst, 11234); 1725 dasm_put(Dst, 11232);
1726 } else { 1726 } else {
1727 dasm_put(Dst, 11246); 1727 dasm_put(Dst, 11244);
1728 } 1728 }
1729 dasm_put(Dst, 10816); 1729 dasm_put(Dst, 10814);
1730 break; 1730 break;
1731 case BC_SUBVN: case BC_SUBNV: case BC_SUBVV: 1731 case BC_SUBVN: case BC_SUBNV: case BC_SUBVV:
1732 dasm_put(Dst, 11360); 1732 dasm_put(Dst, 11358);
1733 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1733 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1734 switch (vk) { 1734 switch (vk) {
1735 case 0: 1735 case 0:
1736 dasm_put(Dst, 11368, LJ_TISNUM); 1736 dasm_put(Dst, 11366, LJ_TISNUM);
1737 if (sse) { 1737 if (sse) {
1738 dasm_put(Dst, 11480); 1738 dasm_put(Dst, 11478);
1739 } else { 1739 } else {
1740 dasm_put(Dst, 11494); 1740 dasm_put(Dst, 11492);
1741 } 1741 }
1742 break; 1742 break;
1743 case 1: 1743 case 1:
1744 dasm_put(Dst, 11402, LJ_TISNUM); 1744 dasm_put(Dst, 11400, LJ_TISNUM);
1745 if (sse) { 1745 if (sse) {
1746 dasm_put(Dst, 11502); 1746 dasm_put(Dst, 11500);
1747 } else { 1747 } else {
1748 dasm_put(Dst, 11516); 1748 dasm_put(Dst, 11514);
1749 } 1749 }
1750 break; 1750 break;
1751 default: 1751 default:
1752 dasm_put(Dst, 11436, LJ_TISNUM, LJ_TISNUM); 1752 dasm_put(Dst, 11434, LJ_TISNUM, LJ_TISNUM);
1753 if (sse) { 1753 if (sse) {
1754 dasm_put(Dst, 11524); 1754 dasm_put(Dst, 11522);
1755 } else { 1755 } else {
1756 dasm_put(Dst, 11538); 1756 dasm_put(Dst, 11536);
1757 } 1757 }
1758 break; 1758 break;
1759 } 1759 }
1760 if (sse) { 1760 if (sse) {
1761 dasm_put(Dst, 11234); 1761 dasm_put(Dst, 11232);
1762 } else { 1762 } else {
1763 dasm_put(Dst, 11246); 1763 dasm_put(Dst, 11244);
1764 } 1764 }
1765 dasm_put(Dst, 10816); 1765 dasm_put(Dst, 10814);
1766 break; 1766 break;
1767 case BC_MULVN: case BC_MULNV: case BC_MULVV: 1767 case BC_MULVN: case BC_MULNV: case BC_MULVV:
1768 dasm_put(Dst, 11360); 1768 dasm_put(Dst, 11358);
1769 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1769 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1770 switch (vk) { 1770 switch (vk) {
1771 case 0: 1771 case 0:
1772 dasm_put(Dst, 11368, LJ_TISNUM); 1772 dasm_put(Dst, 11366, LJ_TISNUM);
1773 if (sse) { 1773 if (sse) {
1774 dasm_put(Dst, 11546); 1774 dasm_put(Dst, 11544);
1775 } else { 1775 } else {
1776 dasm_put(Dst, 11560); 1776 dasm_put(Dst, 11558);
1777 } 1777 }
1778 break; 1778 break;
1779 case 1: 1779 case 1:
1780 dasm_put(Dst, 11402, LJ_TISNUM); 1780 dasm_put(Dst, 11400, LJ_TISNUM);
1781 if (sse) { 1781 if (sse) {
1782 dasm_put(Dst, 11568); 1782 dasm_put(Dst, 11566);
1783 } else { 1783 } else {
1784 dasm_put(Dst, 11582); 1784 dasm_put(Dst, 11580);
1785 } 1785 }
1786 break; 1786 break;
1787 default: 1787 default:
1788 dasm_put(Dst, 11436, LJ_TISNUM, LJ_TISNUM); 1788 dasm_put(Dst, 11434, LJ_TISNUM, LJ_TISNUM);
1789 if (sse) { 1789 if (sse) {
1790 dasm_put(Dst, 11590); 1790 dasm_put(Dst, 11588);
1791 } else { 1791 } else {
1792 dasm_put(Dst, 11604); 1792 dasm_put(Dst, 11602);
1793 } 1793 }
1794 break; 1794 break;
1795 } 1795 }
1796 if (sse) { 1796 if (sse) {
1797 dasm_put(Dst, 11234); 1797 dasm_put(Dst, 11232);
1798 } else { 1798 } else {
1799 dasm_put(Dst, 11246); 1799 dasm_put(Dst, 11244);
1800 } 1800 }
1801 dasm_put(Dst, 10816); 1801 dasm_put(Dst, 10814);
1802 break; 1802 break;
1803 case BC_DIVVN: case BC_DIVNV: case BC_DIVVV: 1803 case BC_DIVVN: case BC_DIVNV: case BC_DIVVV:
1804 dasm_put(Dst, 11360); 1804 dasm_put(Dst, 11358);
1805 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1805 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1806 switch (vk) { 1806 switch (vk) {
1807 case 0: 1807 case 0:
1808 dasm_put(Dst, 11368, LJ_TISNUM); 1808 dasm_put(Dst, 11366, LJ_TISNUM);
1809 if (sse) { 1809 if (sse) {
1810 dasm_put(Dst, 11612); 1810 dasm_put(Dst, 11610);
1811 } else { 1811 } else {
1812 dasm_put(Dst, 11626); 1812 dasm_put(Dst, 11624);
1813 } 1813 }
1814 break; 1814 break;
1815 case 1: 1815 case 1:
1816 dasm_put(Dst, 11402, LJ_TISNUM); 1816 dasm_put(Dst, 11400, LJ_TISNUM);
1817 if (sse) { 1817 if (sse) {
1818 dasm_put(Dst, 11634); 1818 dasm_put(Dst, 11632);
1819 } else { 1819 } else {
1820 dasm_put(Dst, 11648); 1820 dasm_put(Dst, 11646);
1821 } 1821 }
1822 break; 1822 break;
1823 default: 1823 default:
1824 dasm_put(Dst, 11436, LJ_TISNUM, LJ_TISNUM); 1824 dasm_put(Dst, 11434, LJ_TISNUM, LJ_TISNUM);
1825 if (sse) { 1825 if (sse) {
1826 dasm_put(Dst, 11656); 1826 dasm_put(Dst, 11654);
1827 } else { 1827 } else {
1828 dasm_put(Dst, 11670); 1828 dasm_put(Dst, 11668);
1829 } 1829 }
1830 break; 1830 break;
1831 } 1831 }
1832 if (sse) { 1832 if (sse) {
1833 dasm_put(Dst, 11234); 1833 dasm_put(Dst, 11232);
1834 } else { 1834 } else {
1835 dasm_put(Dst, 11246); 1835 dasm_put(Dst, 11244);
1836 } 1836 }
1837 dasm_put(Dst, 10816); 1837 dasm_put(Dst, 10814);
1838 break; 1838 break;
1839 case BC_MODVN: 1839 case BC_MODVN:
1840 dasm_put(Dst, 11360); 1840 dasm_put(Dst, 11358);
1841 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1841 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1842 switch (vk) { 1842 switch (vk) {
1843 case 0: 1843 case 0:
1844 dasm_put(Dst, 11368, LJ_TISNUM); 1844 dasm_put(Dst, 11366, LJ_TISNUM);
1845 if (sse) { 1845 if (sse) {
1846 dasm_put(Dst, 11678); 1846 dasm_put(Dst, 11676);
1847 } else { 1847 } else {
1848 dasm_put(Dst, 11692); 1848 dasm_put(Dst, 11690);
1849 } 1849 }
1850 break; 1850 break;
1851 case 1: 1851 case 1:
1852 dasm_put(Dst, 11402, LJ_TISNUM); 1852 dasm_put(Dst, 11400, LJ_TISNUM);
1853 if (sse) { 1853 if (sse) {
1854 dasm_put(Dst, 11700); 1854 dasm_put(Dst, 11698);
1855 } else { 1855 } else {
1856 dasm_put(Dst, 11714); 1856 dasm_put(Dst, 11712);
1857 } 1857 }
1858 break; 1858 break;
1859 default: 1859 default:
1860 dasm_put(Dst, 11436, LJ_TISNUM, LJ_TISNUM); 1860 dasm_put(Dst, 11434, LJ_TISNUM, LJ_TISNUM);
1861 if (sse) { 1861 if (sse) {
1862 dasm_put(Dst, 11722); 1862 dasm_put(Dst, 11720);
1863 } else { 1863 } else {
1864 dasm_put(Dst, 11736); 1864 dasm_put(Dst, 11734);
1865 } 1865 }
1866 break; 1866 break;
1867 } 1867 }
1868 dasm_put(Dst, 11744); 1868 dasm_put(Dst, 11742);
1869 if (sse) { 1869 if (sse) {
1870 dasm_put(Dst, 11234); 1870 dasm_put(Dst, 11232);
1871 } else { 1871 } else {
1872 dasm_put(Dst, 11246); 1872 dasm_put(Dst, 11244);
1873 } 1873 }
1874 dasm_put(Dst, 10816); 1874 dasm_put(Dst, 10814);
1875 break; 1875 break;
1876 case BC_MODNV: case BC_MODVV: 1876 case BC_MODNV: case BC_MODVV:
1877 dasm_put(Dst, 11360); 1877 dasm_put(Dst, 11358);
1878 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1878 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1879 switch (vk) { 1879 switch (vk) {
1880 case 0: 1880 case 0:
1881 dasm_put(Dst, 11368, LJ_TISNUM); 1881 dasm_put(Dst, 11366, LJ_TISNUM);
1882 if (sse) { 1882 if (sse) {
1883 dasm_put(Dst, 11678); 1883 dasm_put(Dst, 11676);
1884 } else { 1884 } else {
1885 dasm_put(Dst, 11692); 1885 dasm_put(Dst, 11690);
1886 } 1886 }
1887 break; 1887 break;
1888 case 1: 1888 case 1:
1889 dasm_put(Dst, 11402, LJ_TISNUM); 1889 dasm_put(Dst, 11400, LJ_TISNUM);
1890 if (sse) { 1890 if (sse) {
1891 dasm_put(Dst, 11700); 1891 dasm_put(Dst, 11698);
1892 } else { 1892 } else {
1893 dasm_put(Dst, 11714); 1893 dasm_put(Dst, 11712);
1894 } 1894 }
1895 break; 1895 break;
1896 default: 1896 default:
1897 dasm_put(Dst, 11436, LJ_TISNUM, LJ_TISNUM); 1897 dasm_put(Dst, 11434, LJ_TISNUM, LJ_TISNUM);
1898 if (sse) { 1898 if (sse) {
1899 dasm_put(Dst, 11722); 1899 dasm_put(Dst, 11720);
1900 } else { 1900 } else {
1901 dasm_put(Dst, 11736); 1901 dasm_put(Dst, 11734);
1902 } 1902 }
1903 break; 1903 break;
1904 } 1904 }
1905 dasm_put(Dst, 11750); 1905 dasm_put(Dst, 11748);
1906 break; 1906 break;
1907 case BC_POW: 1907 case BC_POW:
1908 dasm_put(Dst, 11360); 1908 dasm_put(Dst, 11358);
1909 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1909 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1910 switch (vk) { 1910 switch (vk) {
1911 case 0: 1911 case 0:
1912 dasm_put(Dst, 11368, LJ_TISNUM); 1912 dasm_put(Dst, 11366, LJ_TISNUM);
1913 if (sse) { 1913 if (sse) {
1914 dasm_put(Dst, 11678); 1914 dasm_put(Dst, 11676);
1915 } else { 1915 } else {
1916 dasm_put(Dst, 11692); 1916 dasm_put(Dst, 11690);
1917 } 1917 }
1918 break; 1918 break;
1919 case 1: 1919 case 1:
1920 dasm_put(Dst, 11402, LJ_TISNUM); 1920 dasm_put(Dst, 11400, LJ_TISNUM);
1921 if (sse) { 1921 if (sse) {
1922 dasm_put(Dst, 11700); 1922 dasm_put(Dst, 11698);
1923 } else { 1923 } else {
1924 dasm_put(Dst, 11714); 1924 dasm_put(Dst, 11712);
1925 } 1925 }
1926 break; 1926 break;
1927 default: 1927 default:
1928 dasm_put(Dst, 11436, LJ_TISNUM, LJ_TISNUM); 1928 dasm_put(Dst, 11434, LJ_TISNUM, LJ_TISNUM);
1929 if (sse) { 1929 if (sse) {
1930 dasm_put(Dst, 11722); 1930 dasm_put(Dst, 11720);
1931 } else { 1931 } else {
1932 dasm_put(Dst, 11736); 1932 dasm_put(Dst, 11734);
1933 } 1933 }
1934 break; 1934 break;
1935 } 1935 }
1936 dasm_put(Dst, 11755); 1936 dasm_put(Dst, 11753);
1937 if (sse) { 1937 if (sse) {
1938 dasm_put(Dst, 11234); 1938 dasm_put(Dst, 11232);
1939 } else { 1939 } else {
1940 dasm_put(Dst, 11246); 1940 dasm_put(Dst, 11244);
1941 } 1941 }
1942 dasm_put(Dst, 10816); 1942 dasm_put(Dst, 10814);
1943 break; 1943 break;
1944 1944
1945 case BC_CAT: 1945 case BC_CAT:
1946 dasm_put(Dst, 11759, Dt1(->base), Dt1(->base)); 1946 dasm_put(Dst, 11757, Dt1(->base), Dt1(->base));
1947 break; 1947 break;
1948 1948
1949 /* -- Constant ops ------------------------------------------------------ */ 1949 /* -- Constant ops ------------------------------------------------------ */
1950 1950
1951 case BC_KSTR: 1951 case BC_KSTR:
1952 dasm_put(Dst, 11853, LJ_TSTR); 1952 dasm_put(Dst, 11851, LJ_TSTR);
1953 break; 1953 break;
1954 case BC_KSHORT: 1954 case BC_KSHORT:
1955 if (sse) { 1955 if (sse) {
1956 dasm_put(Dst, 11886); 1956 dasm_put(Dst, 11884);
1957 } else { 1957 } else {
1958 dasm_put(Dst, 11901); 1958 dasm_put(Dst, 11899);
1959 } 1959 }
1960 dasm_put(Dst, 10816); 1960 dasm_put(Dst, 10814);
1961 break; 1961 break;
1962 case BC_KNUM: 1962 case BC_KNUM:
1963 if (sse) { 1963 if (sse) {
1964 dasm_put(Dst, 11909); 1964 dasm_put(Dst, 11907);
1965 } else { 1965 } else {
1966 dasm_put(Dst, 11922); 1966 dasm_put(Dst, 11920);
1967 } 1967 }
1968 dasm_put(Dst, 10816); 1968 dasm_put(Dst, 10814);
1969 break; 1969 break;
1970 case BC_KPRI: 1970 case BC_KPRI:
1971 dasm_put(Dst, 11929); 1971 dasm_put(Dst, 11927);
1972 break; 1972 break;
1973 case BC_KNIL: 1973 case BC_KNIL:
1974 dasm_put(Dst, 11955, LJ_TNIL); 1974 dasm_put(Dst, 11953, LJ_TNIL);
1975 break; 1975 break;
1976 1976
1977 /* -- Upvalue and function ops ------------------------------------------ */ 1977 /* -- Upvalue and function ops ------------------------------------------ */
1978 1978
1979 case BC_UGET: 1979 case BC_UGET:
1980 dasm_put(Dst, 12001, offsetof(GCfuncL, uvptr), DtA(->v)); 1980 dasm_put(Dst, 11999, offsetof(GCfuncL, uvptr), DtA(->v));
1981 break; 1981 break;
1982 case BC_USETV: 1982 case BC_USETV:
1983#define TV2MARKOFS \ 1983#define TV2MARKOFS \
1984 ((int32_t)offsetof(GCupval, marked)-(int32_t)offsetof(GCupval, tv)) 1984 ((int32_t)offsetof(GCupval, marked)-(int32_t)offsetof(GCupval, tv))
1985 dasm_put(Dst, 12045, offsetof(GCfuncL, uvptr), DtA(->closed), DtA(->v), TV2MARKOFS, LJ_GC_BLACK, LJ_TISGCV, LJ_TISNUM - LJ_TISGCV, Dt4(->gch.marked), LJ_GC_WHITES, GG_DISP2G); 1985 dasm_put(Dst, 12043, offsetof(GCfuncL, uvptr), DtA(->closed), DtA(->v), TV2MARKOFS, LJ_GC_BLACK, LJ_TISGCV, LJ_TISNUM - LJ_TISGCV, Dt4(->gch.marked), LJ_GC_WHITES, GG_DISP2G);
1986 dasm_put(Dst, 12135); 1986 dasm_put(Dst, 12133);
1987 break; 1987 break;
1988#undef TV2MARKOFS 1988#undef TV2MARKOFS
1989 case BC_USETS: 1989 case BC_USETS:
1990 dasm_put(Dst, 12147, offsetof(GCfuncL, uvptr), DtA(->v), LJ_TSTR, DtA(->marked), LJ_GC_BLACK, Dt4(->gch.marked), LJ_GC_WHITES, DtA(->closed), GG_DISP2G); 1990 dasm_put(Dst, 12145, offsetof(GCfuncL, uvptr), DtA(->v), LJ_TSTR, DtA(->marked), LJ_GC_BLACK, Dt4(->gch.marked), LJ_GC_WHITES, DtA(->closed), GG_DISP2G);
1991 break; 1991 break;
1992 case BC_USETN: 1992 case BC_USETN:
1993 dasm_put(Dst, 12238); 1993 dasm_put(Dst, 12236);
1994 if (sse) { 1994 if (sse) {
1995 dasm_put(Dst, 12243); 1995 dasm_put(Dst, 12241);
1996 } else { 1996 } else {
1997 dasm_put(Dst, 11053); 1997 dasm_put(Dst, 11051);
1998 } 1998 }
1999 dasm_put(Dst, 12250, offsetof(GCfuncL, uvptr), DtA(->v)); 1999 dasm_put(Dst, 12248, offsetof(GCfuncL, uvptr), DtA(->v));
2000 if (sse) { 2000 if (sse) {
2001 dasm_put(Dst, 12259); 2001 dasm_put(Dst, 12257);
2002 } else { 2002 } else {
2003 dasm_put(Dst, 12265); 2003 dasm_put(Dst, 12263);
2004 } 2004 }
2005 dasm_put(Dst, 10816); 2005 dasm_put(Dst, 10814);
2006 break; 2006 break;
2007 case BC_USETP: 2007 case BC_USETP:
2008 dasm_put(Dst, 12268, offsetof(GCfuncL, uvptr), DtA(->v)); 2008 dasm_put(Dst, 12266, offsetof(GCfuncL, uvptr), DtA(->v));
2009 break; 2009 break;
2010 case BC_UCLO: 2010 case BC_UCLO:
2011 dasm_put(Dst, 12305, -BCBIAS_J*4, Dt1(->openupval), Dt1(->base), Dt1(->base)); 2011 dasm_put(Dst, 12303, -BCBIAS_J*4, Dt1(->openupval), Dt1(->base), Dt1(->base));
2012 break; 2012 break;
2013 2013
2014 case BC_FNEW: 2014 case BC_FNEW:
2015 dasm_put(Dst, 12359, Dt1(->base), Dt1(->base), LJ_TFUNC); 2015 dasm_put(Dst, 12357, Dt1(->base), Dt1(->base), LJ_TFUNC);
2016 break; 2016 break;
2017 2017
2018 /* -- Table ops --------------------------------------------------------- */ 2018 /* -- Table ops --------------------------------------------------------- */
2019 2019
2020 case BC_TNEW: 2020 case BC_TNEW:
2021 dasm_put(Dst, 12430, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->base), LJ_TTAB); 2021 dasm_put(Dst, 12428, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->base), LJ_TTAB);
2022 break; 2022 break;
2023 case BC_TDUP: 2023 case BC_TDUP:
2024 dasm_put(Dst, 12551, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->base), LJ_TTAB); 2024 dasm_put(Dst, 12549, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->base), LJ_TTAB);
2025 break; 2025 break;
2026 2026
2027 case BC_GGET: 2027 case BC_GGET:
2028 dasm_put(Dst, 12643, Dt7(->env)); 2028 dasm_put(Dst, 12641, Dt7(->env));
2029 break; 2029 break;
2030 case BC_GSET: 2030 case BC_GSET:
2031 dasm_put(Dst, 12661, Dt7(->env)); 2031 dasm_put(Dst, 12659, Dt7(->env));
2032 break; 2032 break;
2033 2033
2034 case BC_TGETV: 2034 case BC_TGETV:
2035 dasm_put(Dst, 12679, LJ_TTAB, LJ_TISNUM); 2035 dasm_put(Dst, 12677, LJ_TTAB, LJ_TISNUM);
2036 if (sse) { 2036 if (sse) {
2037 dasm_put(Dst, 12712); 2037 dasm_put(Dst, 12710);
2038 } else { 2038 } else {
2039 dasm_put(Dst, 12733); 2039 dasm_put(Dst, 12731);
2040 if (cmov) { 2040 if (cmov) {
2041 dasm_put(Dst, 10779); 2041 dasm_put(Dst, 10777);
2042 } else { 2042 } else {
2043 dasm_put(Dst, 10785); 2043 dasm_put(Dst, 10783);
2044 } 2044 }
2045 dasm_put(Dst, 2524); 2045 dasm_put(Dst, 2524);
2046 } 2046 }
2047 dasm_put(Dst, 12743, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 2047 dasm_put(Dst, 12741, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
2048 dasm_put(Dst, 12835, LJ_TSTR); 2048 dasm_put(Dst, 12833, LJ_TSTR);
2049 break; 2049 break;
2050 case BC_TGETS: 2050 case BC_TGETS:
2051 dasm_put(Dst, 12853, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); 2051 dasm_put(Dst, 12851, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL);
2052 dasm_put(Dst, 12937, LJ_TNIL, DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 2052 dasm_put(Dst, 12935, LJ_TNIL, DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
2053 break; 2053 break;
2054 case BC_TGETB: 2054 case BC_TGETB:
2055 dasm_put(Dst, 13008, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 2055 dasm_put(Dst, 13006, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
2056 dasm_put(Dst, 11350); 2056 dasm_put(Dst, 11348);
2057 break; 2057 break;
2058 2058
2059 case BC_TSETV: 2059 case BC_TSETV:
2060 dasm_put(Dst, 13107, LJ_TTAB, LJ_TISNUM); 2060 dasm_put(Dst, 13105, LJ_TTAB, LJ_TISNUM);
2061 if (sse) { 2061 if (sse) {
2062 dasm_put(Dst, 12712); 2062 dasm_put(Dst, 12710);
2063 } else { 2063 } else {
2064 dasm_put(Dst, 12733); 2064 dasm_put(Dst, 12731);
2065 if (cmov) { 2065 if (cmov) {
2066 dasm_put(Dst, 10779); 2066 dasm_put(Dst, 10777);
2067 } else { 2067 } else {
2068 dasm_put(Dst, 10785); 2068 dasm_put(Dst, 10783);
2069 } 2069 }
2070 dasm_put(Dst, 2524); 2070 dasm_put(Dst, 2524);
2071 } 2071 }
2072 dasm_put(Dst, 13140, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable)); 2072 dasm_put(Dst, 13138, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable));
2073 dasm_put(Dst, 13223, Dt6(->nomm), 1<<MM_newindex, LJ_TSTR, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); 2073 dasm_put(Dst, 13221, Dt6(->nomm), 1<<MM_newindex, LJ_TSTR, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
2074 break; 2074 break;
2075 case BC_TSETS: 2075 case BC_TSETS:
2076 dasm_put(Dst, 13285, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->nomm), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); 2076 dasm_put(Dst, 13283, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->nomm), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL);
2077 dasm_put(Dst, 13360, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, DtB(->next)); 2077 dasm_put(Dst, 13358, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, DtB(->next));
2078 dasm_put(Dst, 13452, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, LJ_TSTR, Dt1(->base), Dt1(->base), Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); 2078 dasm_put(Dst, 13450, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, LJ_TSTR, Dt1(->base), Dt1(->base), Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
2079 break; 2079 break;
2080 case BC_TSETB: 2080 case BC_TSETB:
2081 dasm_put(Dst, 13548, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable)); 2081 dasm_put(Dst, 13546, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable));
2082 dasm_put(Dst, 13646, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); 2082 dasm_put(Dst, 13644, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
2083 break; 2083 break;
2084 2084
2085 case BC_TSETM: 2085 case BC_TSETM:
2086 dasm_put(Dst, 13692); 2086 dasm_put(Dst, 13690);
2087 if (sse) { 2087 if (sse) {
2088 dasm_put(Dst, 12243); 2088 dasm_put(Dst, 12241);
2089 } else { 2089 } else {
2090 dasm_put(Dst, 13697); 2090 dasm_put(Dst, 13695);
2091 } 2091 }
2092 dasm_put(Dst, 13705, Dt6(->marked), LJ_GC_BLACK); 2092 dasm_put(Dst, 13703, Dt6(->marked), LJ_GC_BLACK);
2093 if (sse) { 2093 if (sse) {
2094 dasm_put(Dst, 13730); 2094 dasm_put(Dst, 13728);
2095 } else { 2095 } else {
2096 dasm_put(Dst, 13737); 2096 dasm_put(Dst, 13735);
2097 } 2097 }
2098 dasm_put(Dst, 13742, Dt6(->asize), Dt6(->array), Dt1(->base), Dt1(->base), Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain)); 2098 dasm_put(Dst, 13740, Dt6(->asize), Dt6(->array), Dt1(->base), Dt1(->base), Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain));
2099 dasm_put(Dst, 13870, Dt6(->gclist)); 2099 dasm_put(Dst, 13868, Dt6(->gclist));
2100 break; 2100 break;
2101 2101
2102 /* -- Calls and vararg handling ----------------------------------------- */ 2102 /* -- Calls and vararg handling ----------------------------------------- */
2103 2103
2104 case BC_CALL: case BC_CALLM: 2104 case BC_CALL: case BC_CALLM:
2105 dasm_put(Dst, 11364); 2105 dasm_put(Dst, 11362);
2106 if (op == BC_CALLM) { 2106 if (op == BC_CALLM) {
2107 dasm_put(Dst, 13878); 2107 dasm_put(Dst, 13876);
2108 } 2108 }
2109 dasm_put(Dst, 13883, LJ_TFUNC, Dt7(->pc)); 2109 dasm_put(Dst, 13881, LJ_TFUNC, Dt7(->pc));
2110 break; 2110 break;
2111 2111
2112 case BC_CALLMT: 2112 case BC_CALLMT:
2113 dasm_put(Dst, 13878); 2113 dasm_put(Dst, 13876);
2114 break; 2114 break;
2115 case BC_CALLT: 2115 case BC_CALLT:
2116 dasm_put(Dst, 13924, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), Dt7(->pc)); 2116 dasm_put(Dst, 13922, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), Dt7(->pc));
2117 dasm_put(Dst, 14042, FRAME_TYPE, Dt7(->pc), PC2PROTO(k)); 2117 dasm_put(Dst, 14040, FRAME_TYPE, Dt7(->pc), PC2PROTO(k));
2118 break; 2118 break;
2119 2119
2120 case BC_ITERC: 2120 case BC_ITERC:
2121 dasm_put(Dst, 14099, LJ_TFUNC, 2+1, Dt7(->pc)); 2121 dasm_put(Dst, 14097, LJ_TFUNC, 2+1, Dt7(->pc));
2122 break; 2122 break;
2123 2123
2124 case BC_VARG: 2124 case BC_VARG:
2125 dasm_put(Dst, 14179, Dt7(->pc), PC2PROTO(numparams), (8+FRAME_VARG), LJ_TNIL); 2125 dasm_put(Dst, 14177, Dt7(->pc), PC2PROTO(numparams), (8+FRAME_VARG), LJ_TNIL);
2126 dasm_put(Dst, 14323, Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); 2126 dasm_put(Dst, 14321, Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top));
2127 break; 2127 break;
2128 2128
2129 /* -- Returns ----------------------------------------------------------- */ 2129 /* -- Returns ----------------------------------------------------------- */
2130 2130
2131 case BC_RETM: 2131 case BC_RETM:
2132 dasm_put(Dst, 13878); 2132 dasm_put(Dst, 13876);
2133 break; 2133 break;
2134 2134
2135 case BC_RET: case BC_RET0: case BC_RET1: 2135 case BC_RET: case BC_RET0: case BC_RET1:
2136 if (op != BC_RET0) { 2136 if (op != BC_RET0) {
2137 dasm_put(Dst, 14422); 2137 dasm_put(Dst, 14420);
2138 } 2138 }
2139 dasm_put(Dst, 14426, FRAME_TYPE); 2139 dasm_put(Dst, 14424, FRAME_TYPE);
2140 switch (op) { 2140 switch (op) {
2141 case BC_RET: 2141 case BC_RET:
2142 dasm_put(Dst, 14445); 2142 dasm_put(Dst, 14443);
2143 break; 2143 break;
2144 case BC_RET1: 2144 case BC_RET1:
2145 dasm_put(Dst, 14503); 2145 dasm_put(Dst, 14501);
2146 /* fallthrough */ 2146 /* fallthrough */
2147 case BC_RET0: 2147 case BC_RET0:
2148 dasm_put(Dst, 14519); 2148 dasm_put(Dst, 14517);
2149 default: 2149 default:
2150 break; 2150 break;
2151 } 2151 }
2152 dasm_put(Dst, 14530, Dt7(->pc), PC2PROTO(k)); 2152 dasm_put(Dst, 14528, Dt7(->pc), PC2PROTO(k));
2153 if (op == BC_RET) { 2153 if (op == BC_RET) {
2154 dasm_put(Dst, 14572, LJ_TNIL); 2154 dasm_put(Dst, 14570, LJ_TNIL);
2155 } else { 2155 } else {
2156 dasm_put(Dst, 14581, LJ_TNIL); 2156 dasm_put(Dst, 14579, LJ_TNIL);
2157 } 2157 }
2158 dasm_put(Dst, 14588); 2158 dasm_put(Dst, 14586);
2159 if (op != BC_RET0) { 2159 if (op != BC_RET0) {
2160 dasm_put(Dst, 14609); 2160 dasm_put(Dst, 14607);
2161 } 2161 }
2162 dasm_put(Dst, 4680); 2162 dasm_put(Dst, 4680);
2163 break; 2163 break;
@@ -2167,7 +2167,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2167 2167
2168 case BC_FORL: 2168 case BC_FORL:
2169#if LJ_HASJIT 2169#if LJ_HASJIT
2170 dasm_put(Dst, 14613, HOTCOUNT_PCMASK, GG_DISP2HOT); 2170 dasm_put(Dst, 14611, HOTCOUNT_PCMASK, GG_DISP2HOT);
2171#endif 2171#endif
2172 break; 2172 break;
2173 2173
@@ -2179,57 +2179,57 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2179 case BC_FORI: 2179 case BC_FORI:
2180 case BC_IFORL: 2180 case BC_IFORL:
2181 vk = (op == BC_IFORL || op == BC_JFORL); 2181 vk = (op == BC_IFORL || op == BC_JFORL);
2182 dasm_put(Dst, 14634); 2182 dasm_put(Dst, 14632);
2183 if (!vk) { 2183 if (!vk) {
2184 dasm_put(Dst, 14638, LJ_TISNUM, LJ_TISNUM); 2184 dasm_put(Dst, 14636, LJ_TISNUM, LJ_TISNUM);
2185 } 2185 }
2186 dasm_put(Dst, 14657); 2186 dasm_put(Dst, 14655);
2187 if (!vk) { 2187 if (!vk) {
2188 dasm_put(Dst, 14661, LJ_TISNUM); 2188 dasm_put(Dst, 14659, LJ_TISNUM);
2189 } 2189 }
2190 if (sse) { 2190 if (sse) {
2191 dasm_put(Dst, 14670); 2191 dasm_put(Dst, 14668);
2192 if (vk) { 2192 if (vk) {
2193 dasm_put(Dst, 14682); 2193 dasm_put(Dst, 14680);
2194 } else { 2194 } else {
2195 dasm_put(Dst, 14701); 2195 dasm_put(Dst, 14699);
2196 } 2196 }
2197 dasm_put(Dst, 14706); 2197 dasm_put(Dst, 14704);
2198 } else { 2198 } else {
2199 dasm_put(Dst, 14719); 2199 dasm_put(Dst, 14717);
2200 if (vk) { 2200 if (vk) {
2201 dasm_put(Dst, 14725); 2201 dasm_put(Dst, 14723);
2202 } else { 2202 } else {
2203 dasm_put(Dst, 14741); 2203 dasm_put(Dst, 14739);
2204 } 2204 }
2205 dasm_put(Dst, 14749); 2205 dasm_put(Dst, 14747);
2206 if (cmov) { 2206 if (cmov) {
2207 dasm_put(Dst, 10779); 2207 dasm_put(Dst, 10777);
2208 } else { 2208 } else {
2209 dasm_put(Dst, 10785); 2209 dasm_put(Dst, 10783);
2210 } 2210 }
2211 if (!cmov) { 2211 if (!cmov) {
2212 dasm_put(Dst, 14754); 2212 dasm_put(Dst, 14752);
2213 } 2213 }
2214 } 2214 }
2215 if (op == BC_FORI) { 2215 if (op == BC_FORI) {
2216 dasm_put(Dst, 14760, -BCBIAS_J*4); 2216 dasm_put(Dst, 14758, -BCBIAS_J*4);
2217 } else if (op == BC_JFORI) { 2217 } else if (op == BC_JFORI) {
2218 dasm_put(Dst, 14770, -BCBIAS_J*4, BC_JLOOP); 2218 dasm_put(Dst, 14768, -BCBIAS_J*4, BC_JLOOP);
2219 } else if (op == BC_IFORL) { 2219 } else if (op == BC_IFORL) {
2220 dasm_put(Dst, 14784, -BCBIAS_J*4); 2220 dasm_put(Dst, 14782, -BCBIAS_J*4);
2221 } else { 2221 } else {
2222 dasm_put(Dst, 14780, BC_JLOOP); 2222 dasm_put(Dst, 14778, BC_JLOOP);
2223 } 2223 }
2224 dasm_put(Dst, 10814); 2224 dasm_put(Dst, 10812);
2225 if (sse) { 2225 if (sse) {
2226 dasm_put(Dst, 14794); 2226 dasm_put(Dst, 14792);
2227 } 2227 }
2228 break; 2228 break;
2229 2229
2230 case BC_ITERL: 2230 case BC_ITERL:
2231#if LJ_HASJIT 2231#if LJ_HASJIT
2232 dasm_put(Dst, 14613, HOTCOUNT_PCMASK, GG_DISP2HOT); 2232 dasm_put(Dst, 14611, HOTCOUNT_PCMASK, GG_DISP2HOT);
2233#endif 2233#endif
2234 break; 2234 break;
2235 2235
@@ -2238,33 +2238,33 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2238 break; 2238 break;
2239#endif 2239#endif
2240 case BC_IITERL: 2240 case BC_IITERL:
2241 dasm_put(Dst, 14805, LJ_TNIL); 2241 dasm_put(Dst, 14803, LJ_TNIL);
2242 if (op == BC_JITERL) { 2242 if (op == BC_JITERL) {
2243 dasm_put(Dst, 14820, BC_JLOOP); 2243 dasm_put(Dst, 14818, BC_JLOOP);
2244 } else { 2244 } else {
2245 dasm_put(Dst, 14834, -BCBIAS_J*4); 2245 dasm_put(Dst, 14832, -BCBIAS_J*4);
2246 } 2246 }
2247 dasm_put(Dst, 11111); 2247 dasm_put(Dst, 11109);
2248 break; 2248 break;
2249 2249
2250 case BC_LOOP: 2250 case BC_LOOP:
2251#if LJ_HASJIT 2251#if LJ_HASJIT
2252 dasm_put(Dst, 14613, HOTCOUNT_PCMASK, GG_DISP2HOT); 2252 dasm_put(Dst, 14611, HOTCOUNT_PCMASK, GG_DISP2HOT);
2253#endif 2253#endif
2254 break; 2254 break;
2255 2255
2256 case BC_ILOOP: 2256 case BC_ILOOP:
2257 dasm_put(Dst, 10816); 2257 dasm_put(Dst, 10814);
2258 break; 2258 break;
2259 2259
2260 case BC_JLOOP: 2260 case BC_JLOOP:
2261#if LJ_HASJIT 2261#if LJ_HASJIT
2262 dasm_put(Dst, 14850, DISPATCH_J(trace), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L)); 2262 dasm_put(Dst, 14848, DISPATCH_J(trace), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L));
2263#endif 2263#endif
2264 break; 2264 break;
2265 2265
2266 case BC_JMP: 2266 case BC_JMP:
2267 dasm_put(Dst, 14873, -BCBIAS_J*4); 2267 dasm_put(Dst, 14871, -BCBIAS_J*4);
2268 break; 2268 break;
2269 2269
2270 /* -- Function headers -------------------------------------------------- */ 2270 /* -- Function headers -------------------------------------------------- */
@@ -2287,47 +2287,47 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2287 break; 2287 break;
2288#endif 2288#endif
2289 case BC_IFUNCF: 2289 case BC_IFUNCF:
2290 dasm_put(Dst, 14897, -4+PC2PROTO(k), Dt1(->maxstack), -4+PC2PROTO(numparams)); 2290 dasm_put(Dst, 14895, -4+PC2PROTO(k), Dt1(->maxstack), -4+PC2PROTO(numparams));
2291 if (op == BC_JFUNCF) { 2291 if (op == BC_JFUNCF) {
2292 dasm_put(Dst, 14927, BC_JLOOP); 2292 dasm_put(Dst, 14925, BC_JLOOP);
2293 } else { 2293 } else {
2294 dasm_put(Dst, 10816); 2294 dasm_put(Dst, 10814);
2295 } 2295 }
2296 dasm_put(Dst, 14936, LJ_TNIL); 2296 dasm_put(Dst, 14934, LJ_TNIL);
2297 break; 2297 break;
2298 2298
2299 case BC_JFUNCV: 2299 case BC_JFUNCV:
2300#if !LJ_HASJIT 2300#if !LJ_HASJIT
2301 break; 2301 break;
2302#endif 2302#endif
2303 dasm_put(Dst, 10477); 2303 dasm_put(Dst, 10475);
2304 break; /* NYI: compiled vararg functions. */ 2304 break; /* NYI: compiled vararg functions. */
2305 2305
2306 case BC_IFUNCV: 2306 case BC_IFUNCV:
2307 dasm_put(Dst, 14958, FRAME_VARG, Dt1(->maxstack), -4+PC2PROTO(numparams), LJ_TNIL); 2307 dasm_put(Dst, 14956, FRAME_VARG, Dt1(->maxstack), -4+PC2PROTO(numparams), LJ_TNIL);
2308 if (op == BC_JFUNCV) { 2308 if (op == BC_JFUNCV) {
2309 dasm_put(Dst, 14927, BC_JLOOP); 2309 dasm_put(Dst, 14925, BC_JLOOP);
2310 } else { 2310 } else {
2311 dasm_put(Dst, 15049, -4+PC2PROTO(k)); 2311 dasm_put(Dst, 15047, -4+PC2PROTO(k));
2312 } 2312 }
2313 dasm_put(Dst, 15071, LJ_TNIL); 2313 dasm_put(Dst, 15069, LJ_TNIL);
2314 break; 2314 break;
2315 2315
2316 case BC_FUNCC: 2316 case BC_FUNCC:
2317 case BC_FUNCCW: 2317 case BC_FUNCCW:
2318 dasm_put(Dst, 15093, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->top)); 2318 dasm_put(Dst, 15091, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->top));
2319 if (op == BC_FUNCC) { 2319 if (op == BC_FUNCC) {
2320 dasm_put(Dst, 15122); 2320 dasm_put(Dst, 15120);
2321 } else { 2321 } else {
2322 dasm_put(Dst, 15126); 2322 dasm_put(Dst, 15124);
2323 } 2323 }
2324 dasm_put(Dst, 15134, DISPATCH_GL(vmstate), ~LJ_VMST_C); 2324 dasm_put(Dst, 15132, DISPATCH_GL(vmstate), ~LJ_VMST_C);
2325 if (op == BC_FUNCC) { 2325 if (op == BC_FUNCC) {
2326 dasm_put(Dst, 15143); 2326 dasm_put(Dst, 15141);
2327 } else { 2327 } else {
2328 dasm_put(Dst, 15147, DISPATCH_GL(wrapf)); 2328 dasm_put(Dst, 15145, DISPATCH_GL(wrapf));
2329 } 2329 }
2330 dasm_put(Dst, 15152, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top)); 2330 dasm_put(Dst, 15150, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top));
2331 break; 2331 break;
2332 2332
2333 /* ---------------------------------------------------------------------- */ 2333 /* ---------------------------------------------------------------------- */
@@ -2355,7 +2355,7 @@ static int build_backend(BuildCtx *ctx)
2355 2355
2356 build_subroutines(ctx, cmov, sse); 2356 build_subroutines(ctx, cmov, sse);
2357 2357
2358 dasm_put(Dst, 15177); 2358 dasm_put(Dst, 15175);
2359 for (op = 0; op < BC__MAX; op++) 2359 for (op = 0; op < BC__MAX; op++)
2360 build_ins(ctx, (BCOp)op, op, cmov, sse); 2360 build_ins(ctx, (BCOp)op, op, cmov, sse);
2361 2361