summaryrefslogtreecommitdiff
path: root/src/buildvm_x64win.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/buildvm_x64win.h')
-rw-r--r--src/buildvm_x64win.h291
1 files changed, 143 insertions, 148 deletions
diff --git a/src/buildvm_x64win.h b/src/buildvm_x64win.h
index 5e70ad88..87f72a79 100644
--- a/src/buildvm_x64win.h
+++ b/src/buildvm_x64win.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[14047] = { 15static const unsigned char build_actionlist[14042] = {
16 254,1,248,10,252,247,198,237,15,132,244,11,131,230,252,248,41,252,242,72, 16 254,1,248,10,252,247,198,237,15,132,244,11,131,230,252,248,41,252,242,72,
17 141,76,49,252,248,139,114,252,252,199,68,10,4,237,248,12,131,192,1,137,68, 17 141,76,49,252,248,139,114,252,252,199,68,10,4,237,248,12,131,192,1,137,68,
18 36,84,252,247,198,237,15,132,244,13,248,14,129,252,246,239,252,247,198,237, 18 36,84,252,247,198,237,15,132,244,13,248,14,129,252,246,239,252,247,198,237,
@@ -617,85 +617,85 @@ static const unsigned char build_actionlist[14047] = {
617 16,252,255,36,252,235,248,3,131,189,233,0,15,132,244,1,255,139,141,233,252, 617 16,252,255,36,252,235,248,3,131,189,233,0,15,132,244,1,255,139,141,233,252,
618 246,129,233,235,15,132,244,38,15,182,78,252,253,252,233,244,1,248,7,128,165, 618 246,129,233,235,15,132,244,38,15,182,78,252,253,252,233,244,1,248,7,128,165,
619 233,235,139,139,233,137,171,233,137,141,233,15,182,78,252,253,252,233,244, 619 233,235,139,139,233,137,171,233,137,141,233,15,182,78,252,253,252,233,244,
620 2,255,137,124,36,80,255,252,242,15,45,60,199,255,248,1,141,12,202,139,105, 620 2,255,137,124,36,80,139,60,199,248,1,141,12,202,139,105,252,248,252,246,133,
621 252,248,252,246,133,233,235,15,133,244,253,248,2,139,68,36,84,131,232,1,15, 621 233,235,15,133,244,253,248,2,139,68,36,84,131,232,1,15,132,244,250,1,252,
622 132,244,250,1,252,248,59,133,233,15,131,244,251,41,252,248,193,231,3,3,189, 622 248,59,133,233,15,131,244,251,41,252,248,193,231,3,3,189,233,248,3,139,41,
623 233,248,3,139,41,137,47,139,105,4,131,193,8,137,111,4,131,199,8,131,232,1, 623 137,47,139,105,4,131,193,8,137,111,4,131,199,8,131,232,1,15,133,244,3,248,
624 15,133,244,3,248,4,139,124,36,80,139,6,15,182,204,15,182,232,131,198,4,193, 624 4,139,124,36,80,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,
625 232,16,252,255,36,252,235,248,5,139,76,36,96,137,145,233,137,252,234,65,137, 625 36,252,235,248,5,139,76,36,96,137,145,233,137,252,234,65,137,192,137,205,
626 192,137,205,137,116,36,100,232,251,1,33,139,149,233,15,182,78,252,253,252, 626 137,116,36,100,232,251,1,33,139,149,233,15,182,78,252,253,252,233,244,1,248,
627 233,244,1,248,7,255,128,165,233,235,139,131,233,137,171,233,137,133,233,252, 627 7,255,128,165,233,235,139,131,233,137,171,233,137,133,233,252,233,244,2,255,
628 233,244,2,255,3,68,36,84,255,129,124,253,202,4,239,139,44,202,15,133,244, 628 3,68,36,84,255,129,124,253,202,4,239,139,44,202,15,133,244,51,141,84,202,
629 51,141,84,202,8,137,114,252,252,139,181,233,139,14,15,182,252,233,15,182, 629 8,137,114,252,252,139,181,233,139,14,15,182,252,233,15,182,205,131,198,4,
630 205,131,198,4,252,255,36,252,235,255,141,76,202,8,137,215,139,105,252,248, 630 252,255,36,252,235,255,141,76,202,8,137,215,139,105,252,248,129,121,253,252,
631 129,121,253,252,252,239,15,133,244,28,248,52,139,114,252,252,252,247,198, 631 252,239,15,133,244,28,248,52,139,114,252,252,252,247,198,237,15,133,244,253,
632 237,15,133,244,253,248,1,137,106,252,248,137,68,36,84,131,232,1,15,132,244, 632 248,1,137,106,252,248,137,68,36,84,131,232,1,15,132,244,249,248,2,139,41,
633 249,248,2,139,41,137,47,139,105,4,137,111,4,131,199,8,131,193,8,131,232,1, 633 137,47,139,105,4,137,111,4,131,199,8,131,193,8,131,232,1,15,133,244,2,139,
634 15,133,244,2,139,106,252,248,248,3,139,68,36,84,128,189,233,1,15,135,244, 634 106,252,248,248,3,139,68,36,84,128,189,233,1,15,135,244,251,248,4,139,181,
635 251,248,4,139,181,233,139,14,15,182,252,233,15,182,205,131,198,4,252,255, 635 233,139,14,15,182,252,233,15,182,205,131,198,4,252,255,36,252,235,248,5,255,
636 36,252,235,248,5,255,252,247,198,237,15,133,244,4,15,182,78,252,253,72,252, 636 252,247,198,237,15,133,244,4,15,182,78,252,253,72,252,247,209,141,12,202,
637 247,209,141,12,202,139,121,252,248,139,191,233,139,191,233,252,233,244,4, 637 139,121,252,248,139,191,233,139,191,233,252,233,244,4,248,7,129,252,238,239,
638 248,7,129,252,238,239,252,247,198,237,15,133,244,254,41,252,242,137,215,139, 638 252,247,198,237,15,133,244,254,41,252,242,137,215,139,114,252,252,252,233,
639 114,252,252,252,233,244,1,248,8,129,198,239,252,233,244,1,255,141,76,202, 639 244,1,248,8,129,198,239,252,233,244,1,255,141,76,202,8,139,105,232,139,65,
640 8,139,105,232,139,65,252,236,137,41,137,65,4,139,105,252,240,139,65,252,244, 640 252,236,137,41,137,65,4,139,105,252,240,139,65,252,244,137,105,8,137,65,12,
641 137,105,8,137,65,12,139,105,224,139,65,228,137,105,252,248,137,65,252,252, 641 139,105,224,139,65,228,137,105,252,248,137,65,252,252,129,252,248,239,184,
642 129,252,248,239,184,237,15,133,244,28,137,202,137,114,252,252,139,181,233, 642 237,15,133,244,28,137,202,137,114,252,252,139,181,233,139,14,15,182,252,233,
643 139,14,15,182,252,233,15,182,205,131,198,4,252,255,36,252,235,255,15,182, 643 15,182,205,131,198,4,252,255,36,252,235,255,15,182,252,236,139,66,252,248,
644 252,236,139,66,252,248,141,12,202,139,128,233,15,182,128,233,137,124,36,80, 644 141,12,202,139,128,233,15,182,128,233,137,124,36,80,141,188,253,194,233,43,
645 141,188,253,194,233,43,122,252,252,133,252,237,15,132,244,251,141,108,252, 645 122,252,252,133,252,237,15,132,244,251,141,108,252,233,252,248,57,215,15,
646 233,252,248,57,215,15,131,244,248,248,1,139,71,252,248,137,1,139,71,252,252, 646 131,244,248,248,1,139,71,252,248,137,1,139,71,252,252,131,199,8,137,65,4,
647 131,199,8,137,65,4,131,193,8,57,252,233,15,131,244,249,57,215,15,130,244, 647 131,193,8,57,252,233,15,131,244,249,57,215,15,130,244,1,248,2,199,65,4,237,
648 1,248,2,199,65,4,237,131,193,8,57,252,233,15,130,244,2,248,3,139,124,36,80, 648 131,193,8,57,252,233,15,130,244,2,248,3,139,124,36,80,139,6,15,182,204,15,
649 139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,252,235,248,5, 649 182,232,131,198,4,193,232,16,252,255,36,252,235,248,5,199,68,36,84,1,0,0,
650 199,68,36,84,1,0,0,0,137,208,41,252,248,15,134,244,3,255,137,197,193,252, 650 0,137,208,41,252,248,15,134,244,3,255,137,197,193,252,237,3,131,197,1,137,
651 237,3,131,197,1,137,108,36,84,139,108,36,96,1,200,59,133,233,15,135,244,253, 651 108,36,84,139,108,36,96,1,200,59,133,233,15,135,244,253,248,6,139,71,252,
652 248,6,139,71,252,248,137,1,139,71,252,252,131,199,8,137,65,4,131,193,8,57, 652 248,137,1,139,71,252,252,131,199,8,137,65,4,131,193,8,57,215,15,130,244,6,
653 215,15,130,244,6,252,233,244,3,248,7,137,149,233,137,141,233,137,116,36,100, 653 252,233,244,3,248,7,137,149,233,137,141,233,137,116,36,100,41,215,139,84,
654 41,215,139,84,36,84,131,252,234,1,137,252,233,232,251,1,0,139,149,233,139, 654 36,84,131,252,234,1,137,252,233,232,251,1,0,139,149,233,139,141,233,1,215,
655 141,233,1,215,252,233,244,6,255,193,225,3,255,248,1,139,114,252,252,137,68, 655 252,233,244,6,255,193,225,3,255,248,1,139,114,252,252,137,68,36,84,252,247,
656 36,84,252,247,198,237,15,133,244,253,255,248,13,137,215,131,232,1,15,132, 656 198,237,15,133,244,253,255,248,13,137,215,131,232,1,15,132,244,249,248,2,
657 244,249,248,2,139,44,15,137,111,252,248,139,108,15,4,137,111,252,252,131, 657 139,44,15,137,111,252,248,139,108,15,4,137,111,252,252,131,199,8,131,232,
658 199,8,131,232,1,15,133,244,2,248,3,139,68,36,84,15,182,110,252,255,248,5, 658 1,15,133,244,2,248,3,139,68,36,84,15,182,110,252,255,248,5,57,197,15,135,
659 57,197,15,135,244,252,255,139,108,10,4,137,106,252,252,139,44,10,137,106, 659 244,252,255,139,108,10,4,137,106,252,252,139,44,10,137,106,252,248,255,248,
660 252,248,255,248,5,56,70,252,255,15,135,244,252,255,15,182,78,252,253,72,252, 660 5,56,70,252,255,15,135,244,252,255,15,182,78,252,253,72,252,247,209,141,20,
661 247,209,141,20,202,139,122,252,248,139,191,233,139,191,233,139,6,15,182,204, 661 202,139,122,252,248,139,191,233,139,191,233,139,6,15,182,204,15,182,232,131,
662 15,182,232,131,198,4,193,232,16,252,255,36,252,235,248,6,255,199,71,252,252, 662 198,4,193,232,16,252,255,36,252,235,248,6,255,199,71,252,252,237,131,199,
663 237,131,199,8,255,199,68,194,252,244,237,255,131,192,1,252,233,244,5,248, 663 8,255,199,68,194,252,244,237,255,131,192,1,252,233,244,5,248,7,141,174,233,
664 7,141,174,233,252,247,197,237,15,133,244,14,41,252,234,255,1,252,233,255, 664 252,247,197,237,15,133,244,14,41,252,234,255,1,252,233,255,137,252,245,209,
665 137,252,245,209,252,237,129,229,239,102,131,172,253,43,233,1,15,132,244,140, 665 252,237,129,229,239,102,131,172,253,43,233,1,15,132,244,140,255,141,12,202,
666 255,141,12,202,255,129,121,253,4,239,15,135,244,53,129,121,253,12,239,15, 666 255,129,121,253,4,239,15,135,244,53,129,121,253,12,239,15,135,244,53,255,
667 135,244,53,255,139,105,20,255,129,252,253,239,15,135,244,53,255,252,242,15, 667 139,105,20,255,129,252,253,239,15,135,244,53,255,252,242,15,16,1,252,242,
668 16,1,252,242,15,16,73,8,255,252,242,15,88,65,16,252,242,15,17,1,133,252,237, 668 15,16,73,8,255,252,242,15,88,65,16,252,242,15,17,1,133,252,237,15,136,244,
669 15,136,244,249,255,15,140,244,249,255,102,15,46,200,248,1,252,242,15,17,65, 669 249,255,15,140,244,249,255,102,15,46,200,248,1,252,242,15,17,65,24,255,221,
670 24,255,221,65,8,221,1,255,220,65,16,221,17,221,81,24,133,252,237,15,136,244, 670 65,8,221,1,255,220,65,16,221,17,221,81,24,133,252,237,15,136,244,247,255,
671 247,255,221,81,24,15,140,244,247,255,217,201,248,1,255,15,183,70,252,254, 671 221,81,24,15,140,244,247,255,217,201,248,1,255,15,183,70,252,254,255,15,131,
672 255,15,131,244,248,141,180,253,134,233,255,141,180,253,134,233,15,183,70, 672 244,248,141,180,253,134,233,255,141,180,253,134,233,15,183,70,252,254,15,
673 252,254,15,131,245,255,15,130,244,248,141,180,253,134,233,255,248,3,102,15, 673 131,245,255,15,130,244,248,141,180,253,134,233,255,248,3,102,15,46,193,252,
674 46,193,252,233,244,1,255,141,12,202,139,105,4,129,252,253,239,15,132,244, 674 233,244,1,255,141,12,202,139,105,4,129,252,253,239,15,132,244,247,255,137,
675 247,255,137,105,252,252,139,41,137,105,252,248,252,233,245,255,141,180,253, 675 105,252,252,139,41,137,105,252,248,252,233,245,255,141,180,253,134,233,139,
676 134,233,139,1,137,105,252,252,137,65,252,248,255,139,139,233,139,4,129,72, 676 1,137,105,252,252,137,65,252,248,255,139,139,233,139,4,129,72,139,128,233,
677 139,128,233,139,108,36,96,137,147,233,137,171,233,76,137,100,36,80,76,137, 677 139,108,36,96,137,147,233,137,171,233,76,137,100,36,80,76,137,108,36,32,76,
678 108,36,32,76,137,116,36,24,76,137,124,36,16,72,137,225,72,129,252,236,239, 678 137,116,36,24,76,137,124,36,16,72,137,225,72,129,252,236,239,102,15,127,49,
679 102,15,127,49,102,15,127,185,233,102,68,15,127,129,233,102,68,15,127,137, 679 102,15,127,185,233,102,68,15,127,129,233,102,68,15,127,137,233,102,68,15,
680 233,102,68,15,127,145,233,102,68,15,127,153,233,102,68,15,127,161,233,102, 680 127,145,233,102,68,15,127,153,233,102,68,15,127,161,233,102,68,15,127,169,
681 68,15,127,169,233,102,68,15,127,177,233,102,68,15,127,185,233,252,255,224, 681 233,102,68,15,127,177,233,102,68,15,127,185,233,252,255,224,255,141,180,253,
682 255,141,180,253,134,233,139,6,15,182,204,15,182,232,131,198,4,193,232,16, 682 134,233,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,252,235,
683 252,255,36,252,235,255,137,252,245,209,252,237,129,229,239,102,131,172,253, 683 255,137,252,245,209,252,237,129,229,239,102,131,172,253,43,233,1,15,132,244,
684 43,233,1,15,132,244,142,255,139,190,233,139,108,36,96,141,12,202,59,141,233, 684 142,255,139,190,233,139,108,36,96,141,12,202,59,141,233,15,135,244,23,15,
685 15,135,244,23,15,182,142,233,57,200,15,134,244,249,248,2,255,15,183,70,252, 685 182,142,233,57,200,15,134,244,249,248,2,255,15,183,70,252,254,252,233,245,
686 254,252,233,245,255,248,3,199,68,194,252,252,237,131,192,1,57,200,15,134, 686 255,248,3,199,68,194,252,252,237,131,192,1,57,200,15,134,244,3,252,233,244,
687 244,3,252,233,244,2,255,141,44,197,237,141,4,194,139,122,252,248,137,104, 687 2,255,141,44,197,237,141,4,194,139,122,252,248,137,104,252,252,137,120,252,
688 252,252,137,120,252,248,139,108,36,96,141,12,200,59,141,233,15,135,244,22, 688 248,139,108,36,96,141,12,200,59,141,233,15,135,244,22,137,209,137,194,15,
689 137,209,137,194,15,182,174,233,133,252,237,15,132,244,248,248,1,131,193,8, 689 182,174,233,133,252,237,15,132,244,248,248,1,131,193,8,57,209,15,131,244,
690 57,209,15,131,244,249,139,121,252,248,137,56,139,121,252,252,137,120,4,131, 690 249,139,121,252,248,137,56,139,121,252,252,137,120,4,131,192,8,199,65,252,
691 192,8,199,65,252,252,237,131,252,237,1,15,133,244,1,248,2,255,139,190,233, 691 252,237,131,252,237,1,15,133,244,1,248,2,255,139,190,233,139,6,15,182,204,
692 139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,252,235,255,248, 692 15,182,232,131,198,4,193,232,16,252,255,36,252,235,255,248,3,199,64,4,237,
693 3,199,64,4,237,131,192,8,131,252,237,1,15,133,244,3,252,233,244,2,255,139, 693 131,192,8,131,252,237,1,15,133,244,3,252,233,244,2,255,139,106,252,248,72,
694 106,252,248,72,139,189,233,139,108,36,96,141,68,194,252,248,137,149,233,141, 694 139,189,233,139,108,36,96,141,68,194,252,248,137,149,233,141,136,233,59,141,
695 136,233,59,141,233,137,133,233,255,137,252,233,255,72,137,252,250,137,252, 695 233,137,133,233,255,137,252,233,255,72,137,252,250,137,252,233,255,15,135,
696 233,255,15,135,244,21,199,131,233,237,255,252,255,215,255,252,255,147,233, 696 244,21,199,131,233,237,255,252,255,215,255,252,255,147,233,255,199,131,233,
697 255,199,131,233,237,139,149,233,141,12,194,252,247,217,3,141,233,139,114, 697 237,139,149,233,141,12,194,252,247,217,3,141,233,139,114,252,252,252,233,
698 252,252,252,233,244,12,255,254,0 698 244,12,255,254,0
699}; 699};
700 700
701enum { 701enum {
@@ -1965,13 +1965,8 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
1965 break; 1965 break;
1966 1966
1967 case BC_TSETM: 1967 case BC_TSETM:
1968 dasm_put(Dst, 12443); 1968 dasm_put(Dst, 12443, Dt6(->marked), LJ_GC_BLACK, Dt6(->asize), Dt6(->array), Dt1(->base), Dt1(->base));
1969 if (sse) { 1969 dasm_put(Dst, 12590, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
1970 dasm_put(Dst, 12448);
1971 } else {
1972 }
1973 dasm_put(Dst, 12455, Dt6(->marked), LJ_GC_BLACK, Dt6(->asize), Dt6(->array), Dt1(->base), Dt1(->base));
1974 dasm_put(Dst, 12595, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
1975 break; 1970 break;
1976 1971
1977 /* -- Calls and vararg handling ----------------------------------------- */ 1972 /* -- Calls and vararg handling ----------------------------------------- */
@@ -1979,60 +1974,60 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
1979 case BC_CALL: case BC_CALLM: 1974 case BC_CALL: case BC_CALLM:
1980 dasm_put(Dst, 10113); 1975 dasm_put(Dst, 10113);
1981 if (op == BC_CALLM) { 1976 if (op == BC_CALLM) {
1982 dasm_put(Dst, 12613); 1977 dasm_put(Dst, 12608);
1983 } 1978 }
1984 dasm_put(Dst, 12618, LJ_TFUNC, Dt7(->pc)); 1979 dasm_put(Dst, 12613, LJ_TFUNC, Dt7(->pc));
1985 break; 1980 break;
1986 1981
1987 case BC_CALLMT: 1982 case BC_CALLMT:
1988 dasm_put(Dst, 12613); 1983 dasm_put(Dst, 12608);
1989 break; 1984 break;
1990 case BC_CALLT: 1985 case BC_CALLT:
1991 dasm_put(Dst, 12660, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), Dt7(->pc)); 1986 dasm_put(Dst, 12655, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), Dt7(->pc));
1992 dasm_put(Dst, 12779, FRAME_TYPE, Dt7(->pc), PC2PROTO(k), FRAME_VARG, FRAME_TYPEP, FRAME_VARG); 1987 dasm_put(Dst, 12774, FRAME_TYPE, Dt7(->pc), PC2PROTO(k), FRAME_VARG, FRAME_TYPEP, FRAME_VARG);
1993 break; 1988 break;
1994 1989
1995 case BC_ITERC: 1990 case BC_ITERC:
1996 dasm_put(Dst, 12850, LJ_TFUNC, 2+1, Dt7(->pc)); 1991 dasm_put(Dst, 12845, LJ_TFUNC, 2+1, Dt7(->pc));
1997 break; 1992 break;
1998 1993
1999 case BC_VARG: 1994 case BC_VARG:
2000 dasm_put(Dst, 12931, Dt7(->pc), PC2PROTO(numparams), (8+FRAME_VARG), LJ_TNIL); 1995 dasm_put(Dst, 12926, Dt7(->pc), PC2PROTO(numparams), (8+FRAME_VARG), LJ_TNIL);
2001 dasm_put(Dst, 13076, Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); 1996 dasm_put(Dst, 13071, Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top));
2002 break; 1997 break;
2003 1998
2004 /* -- Returns ----------------------------------------------------------- */ 1999 /* -- Returns ----------------------------------------------------------- */
2005 2000
2006 case BC_RETM: 2001 case BC_RETM:
2007 dasm_put(Dst, 12613); 2002 dasm_put(Dst, 12608);
2008 break; 2003 break;
2009 2004
2010 case BC_RET: case BC_RET0: case BC_RET1: 2005 case BC_RET: case BC_RET0: case BC_RET1:
2011 if (op != BC_RET0) { 2006 if (op != BC_RET0) {
2012 dasm_put(Dst, 13175); 2007 dasm_put(Dst, 13170);
2013 } 2008 }
2014 dasm_put(Dst, 13179, FRAME_TYPE); 2009 dasm_put(Dst, 13174, FRAME_TYPE);
2015 switch (op) { 2010 switch (op) {
2016 case BC_RET: 2011 case BC_RET:
2017 dasm_put(Dst, 13198); 2012 dasm_put(Dst, 13193);
2018 break; 2013 break;
2019 case BC_RET1: 2014 case BC_RET1:
2020 dasm_put(Dst, 13256); 2015 dasm_put(Dst, 13251);
2021 /* fallthrough */ 2016 /* fallthrough */
2022 case BC_RET0: 2017 case BC_RET0:
2023 dasm_put(Dst, 13272); 2018 dasm_put(Dst, 13267);
2024 default: 2019 default:
2025 break; 2020 break;
2026 } 2021 }
2027 dasm_put(Dst, 13283, Dt7(->pc), PC2PROTO(k)); 2022 dasm_put(Dst, 13278, Dt7(->pc), PC2PROTO(k));
2028 if (op == BC_RET) { 2023 if (op == BC_RET) {
2029 dasm_put(Dst, 13327, LJ_TNIL); 2024 dasm_put(Dst, 13322, LJ_TNIL);
2030 } else { 2025 } else {
2031 dasm_put(Dst, 13336, LJ_TNIL); 2026 dasm_put(Dst, 13331, LJ_TNIL);
2032 } 2027 }
2033 dasm_put(Dst, 13343, -FRAME_VARG, FRAME_TYPEP); 2028 dasm_put(Dst, 13338, -FRAME_VARG, FRAME_TYPEP);
2034 if (op != BC_RET0) { 2029 if (op != BC_RET0) {
2035 dasm_put(Dst, 13367); 2030 dasm_put(Dst, 13362);
2036 } 2031 }
2037 dasm_put(Dst, 4573); 2032 dasm_put(Dst, 4573);
2038 break; 2033 break;
@@ -2042,7 +2037,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2042 2037
2043 case BC_FORL: 2038 case BC_FORL:
2044#if LJ_HASJIT 2039#if LJ_HASJIT
2045 dasm_put(Dst, 13371, HOTCOUNT_PCMASK, GG_DISP2HOT); 2040 dasm_put(Dst, 13366, HOTCOUNT_PCMASK, GG_DISP2HOT);
2046#endif 2041#endif
2047 break; 2042 break;
2048 2043
@@ -2054,57 +2049,57 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2054 case BC_FORI: 2049 case BC_FORI:
2055 case BC_IFORL: 2050 case BC_IFORL:
2056 vk = (op == BC_IFORL || op == BC_JFORL); 2051 vk = (op == BC_IFORL || op == BC_JFORL);
2057 dasm_put(Dst, 13392); 2052 dasm_put(Dst, 13387);
2058 if (!vk) { 2053 if (!vk) {
2059 dasm_put(Dst, 13396, LJ_TISNUM, LJ_TISNUM); 2054 dasm_put(Dst, 13391, LJ_TISNUM, LJ_TISNUM);
2060 } 2055 }
2061 dasm_put(Dst, 13415); 2056 dasm_put(Dst, 13410);
2062 if (!vk) { 2057 if (!vk) {
2063 dasm_put(Dst, 13419, LJ_TISNUM); 2058 dasm_put(Dst, 13414, LJ_TISNUM);
2064 } 2059 }
2065 if (sse) { 2060 if (sse) {
2066 dasm_put(Dst, 13428); 2061 dasm_put(Dst, 13423);
2067 if (vk) { 2062 if (vk) {
2068 dasm_put(Dst, 13440); 2063 dasm_put(Dst, 13435);
2069 } else { 2064 } else {
2070 dasm_put(Dst, 13459); 2065 dasm_put(Dst, 13454);
2071 } 2066 }
2072 dasm_put(Dst, 13464); 2067 dasm_put(Dst, 13459);
2073 } else { 2068 } else {
2074 dasm_put(Dst, 13477); 2069 dasm_put(Dst, 13472);
2075 if (vk) { 2070 if (vk) {
2076 dasm_put(Dst, 13483); 2071 dasm_put(Dst, 13478);
2077 } else { 2072 } else {
2078 dasm_put(Dst, 13499); 2073 dasm_put(Dst, 13494);
2079 } 2074 }
2080 dasm_put(Dst, 13507); 2075 dasm_put(Dst, 13502);
2081 if (cmov) { 2076 if (cmov) {
2082 dasm_put(Dst, 9536); 2077 dasm_put(Dst, 9536);
2083 } else { 2078 } else {
2084 dasm_put(Dst, 9542); 2079 dasm_put(Dst, 9542);
2085 } 2080 }
2086 if (!cmov) { 2081 if (!cmov) {
2087 dasm_put(Dst, 13512); 2082 dasm_put(Dst, 13507);
2088 } 2083 }
2089 } 2084 }
2090 if (op == BC_FORI) { 2085 if (op == BC_FORI) {
2091 dasm_put(Dst, 13518, -BCBIAS_J*4); 2086 dasm_put(Dst, 13513, -BCBIAS_J*4);
2092 } else if (op == BC_JFORI) { 2087 } else if (op == BC_JFORI) {
2093 dasm_put(Dst, 13528, -BCBIAS_J*4, BC_JLOOP); 2088 dasm_put(Dst, 13523, -BCBIAS_J*4, BC_JLOOP);
2094 } else if (op == BC_IFORL) { 2089 } else if (op == BC_IFORL) {
2095 dasm_put(Dst, 13542, -BCBIAS_J*4); 2090 dasm_put(Dst, 13537, -BCBIAS_J*4);
2096 } else { 2091 } else {
2097 dasm_put(Dst, 13538, BC_JLOOP); 2092 dasm_put(Dst, 13533, BC_JLOOP);
2098 } 2093 }
2099 dasm_put(Dst, 9571); 2094 dasm_put(Dst, 9571);
2100 if (sse) { 2095 if (sse) {
2101 dasm_put(Dst, 13552); 2096 dasm_put(Dst, 13547);
2102 } 2097 }
2103 break; 2098 break;
2104 2099
2105 case BC_ITERL: 2100 case BC_ITERL:
2106#if LJ_HASJIT 2101#if LJ_HASJIT
2107 dasm_put(Dst, 13371, HOTCOUNT_PCMASK, GG_DISP2HOT); 2102 dasm_put(Dst, 13366, HOTCOUNT_PCMASK, GG_DISP2HOT);
2108#endif 2103#endif
2109 break; 2104 break;
2110 2105
@@ -2113,18 +2108,18 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2113 break; 2108 break;
2114#endif 2109#endif
2115 case BC_IITERL: 2110 case BC_IITERL:
2116 dasm_put(Dst, 13563, LJ_TNIL); 2111 dasm_put(Dst, 13558, LJ_TNIL);
2117 if (op == BC_JITERL) { 2112 if (op == BC_JITERL) {
2118 dasm_put(Dst, 13578, BC_JLOOP); 2113 dasm_put(Dst, 13573, BC_JLOOP);
2119 } else { 2114 } else {
2120 dasm_put(Dst, 13592, -BCBIAS_J*4); 2115 dasm_put(Dst, 13587, -BCBIAS_J*4);
2121 } 2116 }
2122 dasm_put(Dst, 9871); 2117 dasm_put(Dst, 9871);
2123 break; 2118 break;
2124 2119
2125 case BC_LOOP: 2120 case BC_LOOP:
2126#if LJ_HASJIT 2121#if LJ_HASJIT
2127 dasm_put(Dst, 13371, HOTCOUNT_PCMASK, GG_DISP2HOT); 2122 dasm_put(Dst, 13366, HOTCOUNT_PCMASK, GG_DISP2HOT);
2128#endif 2123#endif
2129 break; 2124 break;
2130 2125
@@ -2134,12 +2129,12 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2134 2129
2135 case BC_JLOOP: 2130 case BC_JLOOP:
2136#if LJ_HASJIT 2131#if LJ_HASJIT
2137 dasm_put(Dst, 13608, DISPATCH_J(trace), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L), 9*16+4*8, -1*16, -2*16, -3*16, -4*16, -5*16, -6*16, -7*16, -8*16, -9*16); 2132 dasm_put(Dst, 13603, DISPATCH_J(trace), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L), 9*16+4*8, -1*16, -2*16, -3*16, -4*16, -5*16, -6*16, -7*16, -8*16, -9*16);
2138#endif 2133#endif
2139 break; 2134 break;
2140 2135
2141 case BC_JMP: 2136 case BC_JMP:
2142 dasm_put(Dst, 13717, -BCBIAS_J*4); 2137 dasm_put(Dst, 13712, -BCBIAS_J*4);
2143 break; 2138 break;
2144 2139
2145 /* -- Function headers -------------------------------------------------- */ 2140 /* -- Function headers -------------------------------------------------- */
@@ -2153,7 +2148,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2153 2148
2154 case BC_FUNCF: 2149 case BC_FUNCF:
2155#if LJ_HASJIT 2150#if LJ_HASJIT
2156 dasm_put(Dst, 13742, HOTCOUNT_PCMASK, GG_DISP2HOT); 2151 dasm_put(Dst, 13737, HOTCOUNT_PCMASK, GG_DISP2HOT);
2157#endif 2152#endif
2158 case BC_FUNCV: /* NYI: compiled vararg functions. */ 2153 case BC_FUNCV: /* NYI: compiled vararg functions. */
2159 break; 2154 break;
@@ -2163,13 +2158,13 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2163 break; 2158 break;
2164#endif 2159#endif
2165 case BC_IFUNCF: 2160 case BC_IFUNCF:
2166 dasm_put(Dst, 13763, -4+PC2PROTO(k), Dt1(->maxstack), -4+PC2PROTO(numparams)); 2161 dasm_put(Dst, 13758, -4+PC2PROTO(k), Dt1(->maxstack), -4+PC2PROTO(numparams));
2167 if (op == BC_JFUNCF) { 2162 if (op == BC_JFUNCF) {
2168 dasm_put(Dst, 13793, BC_JLOOP); 2163 dasm_put(Dst, 13788, BC_JLOOP);
2169 } else { 2164 } else {
2170 dasm_put(Dst, 9573); 2165 dasm_put(Dst, 9573);
2171 } 2166 }
2172 dasm_put(Dst, 13802, LJ_TNIL); 2167 dasm_put(Dst, 13797, LJ_TNIL);
2173 break; 2168 break;
2174 2169
2175 case BC_JFUNCV: 2170 case BC_JFUNCV:
@@ -2180,30 +2175,30 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2180 break; /* NYI: compiled vararg functions. */ 2175 break; /* NYI: compiled vararg functions. */
2181 2176
2182 case BC_IFUNCV: 2177 case BC_IFUNCV:
2183 dasm_put(Dst, 13824, FRAME_VARG, Dt1(->maxstack), -4+PC2PROTO(numparams), LJ_TNIL); 2178 dasm_put(Dst, 13819, FRAME_VARG, Dt1(->maxstack), -4+PC2PROTO(numparams), LJ_TNIL);
2184 if (op == BC_JFUNCV) { 2179 if (op == BC_JFUNCV) {
2185 dasm_put(Dst, 13793, BC_JLOOP); 2180 dasm_put(Dst, 13788, BC_JLOOP);
2186 } else { 2181 } else {
2187 dasm_put(Dst, 13915, -4+PC2PROTO(k)); 2182 dasm_put(Dst, 13910, -4+PC2PROTO(k));
2188 } 2183 }
2189 dasm_put(Dst, 13938, LJ_TNIL); 2184 dasm_put(Dst, 13933, LJ_TNIL);
2190 break; 2185 break;
2191 2186
2192 case BC_FUNCC: 2187 case BC_FUNCC:
2193 case BC_FUNCCW: 2188 case BC_FUNCCW:
2194 dasm_put(Dst, 13960, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->top)); 2189 dasm_put(Dst, 13955, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->top));
2195 if (op == BC_FUNCC) { 2190 if (op == BC_FUNCC) {
2196 dasm_put(Dst, 13990); 2191 dasm_put(Dst, 13985);
2197 } else { 2192 } else {
2198 dasm_put(Dst, 13994); 2193 dasm_put(Dst, 13989);
2199 } 2194 }
2200 dasm_put(Dst, 14002, DISPATCH_GL(vmstate), ~LJ_VMST_C); 2195 dasm_put(Dst, 13997, DISPATCH_GL(vmstate), ~LJ_VMST_C);
2201 if (op == BC_FUNCC) { 2196 if (op == BC_FUNCC) {
2202 dasm_put(Dst, 14011); 2197 dasm_put(Dst, 14006);
2203 } else { 2198 } else {
2204 dasm_put(Dst, 14015, DISPATCH_GL(wrapf)); 2199 dasm_put(Dst, 14010, DISPATCH_GL(wrapf));
2205 } 2200 }
2206 dasm_put(Dst, 14020, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top)); 2201 dasm_put(Dst, 14015, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top));
2207 break; 2202 break;
2208 2203
2209 /* ---------------------------------------------------------------------- */ 2204 /* ---------------------------------------------------------------------- */
@@ -2231,7 +2226,7 @@ static int build_backend(BuildCtx *ctx)
2231 2226
2232 build_subroutines(ctx, cmov, sse); 2227 build_subroutines(ctx, cmov, sse);
2233 2228
2234 dasm_put(Dst, 14045); 2229 dasm_put(Dst, 14040);
2235 for (op = 0; op < BC__MAX; op++) 2230 for (op = 0; op < BC__MAX; op++)
2236 build_ins(ctx, (BCOp)op, op, cmov, sse); 2231 build_ins(ctx, (BCOp)op, op, cmov, sse);
2237 2232