OLD | NEW |
1 # | 1 # |
2 # Autogenerated by generate-bytecode-expectations. | 2 # Autogenerated by generate-bytecode-expectations. |
3 # | 3 # |
4 | 4 |
5 --- | 5 --- |
6 wrap: no | 6 wrap: no |
7 test function name: f | 7 test function name: f |
8 | 8 |
9 --- | 9 --- |
10 snippet: " | 10 snippet: " |
(...skipping 623 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
634 [228, 238, 240], | 634 [228, 238, 240], |
635 ] | 635 ] |
636 | 636 |
637 --- | 637 --- |
638 snippet: " | 638 snippet: " |
639 function* f(arr) { | 639 function* f(arr) { |
640 for (let x of arr) { let y = x; } | 640 for (let x of arr) { let y = x; } |
641 } | 641 } |
642 f([1, 2, 3]); | 642 f([1, 2, 3]); |
643 " | 643 " |
644 frame size: 15 | 644 frame size: 24 |
645 parameter count: 2 | 645 parameter count: 2 |
646 bytecode array length: 587 | 646 bytecode array length: 435 |
647 bytecodes: [ | 647 bytecodes: [ |
648 B(Ldar), R(new_target), | 648 B(Ldar), R(new_target), |
649 B(JumpIfUndefined), U8(25), | 649 B(JumpIfUndefined), U8(25), |
650 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_ta
rget), U8(1), | 650 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_ta
rget), U8(1), |
651 B(PushContext), R(5), | 651 B(PushContext), R(14), |
652 B(ResumeGenerator), R(new_target), | 652 B(ResumeGenerator), R(new_target), |
653 B(Star), R(4), | 653 B(Star), R(13), |
654 B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), | 654 B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), |
655 B(LdaSmi), I8(79), | 655 B(LdaSmi), I8(79), |
656 B(Star), R(6), | 656 B(Star), R(15), |
657 B(CallRuntime), U16(Runtime::kAbort), R(6), U8(1), | 657 B(CallRuntime), U16(Runtime::kAbort), R(15), U8(1), |
658 B(LdaSmi), I8(-2), | 658 B(LdaSmi), I8(-2), |
659 B(Star), R(4), | 659 B(Star), R(13), |
660 B(CreateFunctionContext), U8(9), | 660 B(CreateFunctionContext), U8(1), |
661 B(PushContext), R(0), | 661 B(PushContext), R(11), |
662 B(Ldar), R(arg0), | 662 B(Ldar), R(arg0), |
663 B(StaCurrentContextSlot), U8(4), | 663 B(StaCurrentContextSlot), U8(4), |
664 B(Mov), R(closure), R(6), | 664 B(Mov), R(closure), R(15), |
665 B(Mov), R(this), R(7), | 665 B(Mov), R(this), R(16), |
666 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(6)
, U8(2), | 666 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(15
), U8(2), |
667 B(StaCurrentContextSlot), U8(5), | 667 B(Star), R(3), |
668 /* 11 E> */ B(StackCheck), | 668 /* 11 E> */ B(StackCheck), |
669 B(Mov), R(context), R(8), | 669 B(Mov), R(context), R(17), |
670 B(LdaImmutableCurrentContextSlot), U8(5), | 670 B(LdaZero), |
671 B(Star), R(9), | 671 B(Mov), R(3), R(19), |
672 B(LdaImmutableCurrentContextSlot), U8(5), | 672 B(Mov), R(3), R(18), |
673 B(Star), R(10), | 673 /* 11 E> */ B(SuspendGenerator), R(18), U8(0), |
674 B(LdaZero), | 674 B(Ldar), R(19), |
675 /* 11 E> */ B(SuspendGenerator), R(9), U8(0), | |
676 B(Ldar), R(10), | |
677 /* 55 S> */ B(Return), | 675 /* 55 S> */ B(Return), |
678 B(LdaSmi), I8(-2), | 676 B(LdaSmi), I8(-2), |
679 B(Star), R(4), | 677 B(Star), R(13), |
680 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(9), U8(1), | 678 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(18), U8(1), |
681 B(Star), R(10), | 679 B(Star), R(19), |
682 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(9),
U8(1), | 680 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(18)
, U8(1), |
683 B(Star), R(11), | 681 B(Star), R(20), |
684 B(LdaZero), | 682 B(LdaZero), |
685 B(TestEqualStrictNoFeedback), R(11), | 683 B(TestEqualStrictNoFeedback), R(20), |
686 B(JumpIfTrue), U8(28), | 684 B(JumpIfTrue), U8(28), |
687 B(LdaSmi), I8(2), | 685 B(LdaSmi), I8(2), |
688 B(TestEqualStrictNoFeedback), R(11), | 686 B(TestEqualStrictNoFeedback), R(20), |
689 B(JumpIfTrue), U8(19), | 687 B(JumpIfTrue), U8(19), |
690 B(LdaTrue), | 688 B(LdaTrue), |
691 B(Star), R(13), | 689 B(Star), R(22), |
692 B(Mov), R(10), R(12), | 690 B(Mov), R(19), R(21), |
693 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(12)
, U8(2), | 691 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(21)
, U8(2), |
694 B(Star), R(7), | 692 B(Star), R(16), |
695 B(LdaZero), | 693 B(LdaZero), |
696 B(Star), R(6), | 694 B(Star), R(15), |
697 B(JumpConstant), U8(13), | 695 B(JumpConstant), U8(10), |
698 B(Ldar), R(10), | 696 B(Ldar), R(19), |
699 /* 11 E> */ B(Throw), | 697 /* 11 E> */ B(Throw), |
700 B(Ldar), R(closure), | 698 B(LdaZero), |
701 B(CreateBlockContext), U8(1), | 699 B(Star), R(7), |
702 B(PushContext), R(1), | 700 B(Mov), R(context), R(20), |
703 B(LdaTheHole), | 701 B(Mov), R(context), R(21), |
704 B(StaCurrentContextSlot), U8(4), | 702 /* 35 S> */ B(LdaImmutableCurrentContextSlot), U8(4), |
705 B(LdaZero), | 703 B(Star), R(22), |
706 B(StaContextSlot), R(1), U8(9), U8(0), | 704 B(LdaNamedProperty), R(22), U8(1), U8(3), |
707 B(Mov), R(context), R(11), | 705 B(Star), R(23), |
708 B(Mov), R(context), R(12), | 706 B(CallProperty0), R(23), R(22), U8(5), |
709 /* 35 S> */ B(LdaImmutableContextSlot), R(1), U8(4), U8(0), | |
710 B(Star), R(13), | |
711 B(LdaNamedProperty), R(13), U8(2), U8(3), | |
712 B(Star), R(14), | |
713 B(CallProperty0), R(14), R(13), U8(5), | |
714 B(JumpIfJSReceiver), U8(7), | 707 B(JumpIfJSReceiver), U8(7), |
715 B(CallRuntime), U16(Runtime::kThrowSymbolIteratorInvalid), R(0),
U8(0), | 708 B(CallRuntime), U16(Runtime::kThrowSymbolIteratorInvalid), R(0),
U8(0), |
716 /* 35 E> */ B(StaContextSlot), R(1), U8(7), U8(0), | 709 B(Star), R(5), |
717 /* 30 S> */ B(LdaContextSlot), R(1), U8(7), U8(0), | 710 /* 30 S> */ B(LdaNamedProperty), R(5), U8(2), U8(9), |
718 B(Star), R(14), | 711 B(Star), R(22), |
719 B(LdaNamedProperty), R(14), U8(3), U8(9), | 712 B(CallProperty0), R(22), R(5), U8(7), |
720 B(Star), R(13), | 713 B(Star), R(6), |
721 B(CallProperty0), R(13), R(14), U8(7), | 714 /* 30 E> */ B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(6), U8(1), |
722 /* 30 E> */ B(StaContextSlot), R(1), U8(8), U8(0), | |
723 B(Star), R(13), | |
724 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(13), U8(1), | |
725 B(ToBooleanLogicalNot), | 715 B(ToBooleanLogicalNot), |
726 B(JumpIfFalse), U8(13), | 716 B(JumpIfFalse), U8(7), |
727 B(LdaContextSlot), R(1), U8(8), U8(0), | 717 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(6), U8(1), |
728 B(Star), R(13), | 718 B(LdaNamedProperty), R(6), U8(3), U8(11), |
729 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(13), U8(1), | 719 B(JumpIfToBooleanTrue), U8(28), |
730 B(LdaContextSlot), R(1), U8(8), U8(0), | 720 B(LdaNamedProperty), R(6), U8(4), U8(13), |
731 B(Star), R(13), | 721 B(Star), R(8), |
732 B(LdaNamedProperty), R(13), U8(4), U8(11), | |
733 B(JumpIfToBooleanTrue), U8(73), | |
734 B(LdaContextSlot), R(1), U8(8), U8(0), | |
735 B(Star), R(13), | |
736 B(LdaNamedProperty), R(13), U8(5), U8(13), | |
737 B(StaContextSlot), R(1), U8(10), U8(0), | |
738 B(LdaSmi), I8(2), | 722 B(LdaSmi), I8(2), |
739 B(StaContextSlot), R(1), U8(9), U8(0), | 723 B(Star), R(7), |
740 B(LdaContextSlot), R(1), U8(10), U8(0), | 724 B(Mov), R(8), R(4), |
741 B(StaContextSlot), R(1), U8(6), U8(0), | |
742 /* 21 E> */ B(StackCheck), | 725 /* 21 E> */ B(StackCheck), |
| 726 B(Mov), R(4), R(1), |
| 727 /* 50 S> */ B(Mov), R(1), R(0), |
| 728 B(LdaZero), |
| 729 B(Star), R(7), |
| 730 B(JumpLoop), U8(53), I8(0), |
| 731 B(Jump), U8(36), |
| 732 B(Star), R(22), |
743 B(Ldar), R(closure), | 733 B(Ldar), R(closure), |
744 B(CreateBlockContext), U8(6), | 734 /* 50 E> */ B(CreateCatchContext), R(22), U8(5), U8(6), |
745 B(PushContext), R(2), | 735 B(PushContext), R(12), |
| 736 B(Star), R(21), |
| 737 B(LdaSmi), I8(2), |
| 738 B(TestEqualStrict), R(7), U8(15), |
| 739 B(JumpIfFalse), U8(6), |
| 740 B(LdaSmi), I8(1), |
| 741 B(Star), R(7), |
| 742 B(LdaImmutableCurrentContextSlot), U8(4), |
| 743 B(Star), R(22), |
| 744 B(CallRuntime), U16(Runtime::kReThrow), R(22), U8(1), |
| 745 B(PopContext), R(12), |
| 746 B(LdaSmi), I8(-1), |
| 747 B(Star), R(18), |
| 748 B(Jump), U8(7), |
| 749 B(Star), R(19), |
| 750 B(LdaZero), |
| 751 B(Star), R(18), |
746 B(LdaTheHole), | 752 B(LdaTheHole), |
747 B(StaCurrentContextSlot), U8(4), | 753 B(SetPendingMessage), |
748 B(LdaContextSlot), R(1), U8(6), U8(0), | 754 B(Star), R(20), |
749 B(StaCurrentContextSlot), U8(4), | 755 B(LdaZero), |
750 B(Ldar), R(closure), | 756 B(TestEqualStrict), R(7), U8(16), |
751 B(CreateBlockContext), U8(7), | 757 B(JumpIfTrue), U8(104), |
752 B(PushContext), R(3), | 758 B(LdaNamedProperty), R(5), U8(7), U8(17), |
753 B(LdaTheHole), | |
754 B(StaCurrentContextSlot), U8(4), | |
755 /* 50 S> */ B(LdaImmutableContextSlot), R(3), U8(4), U8(0), | |
756 /* 50 E> */ B(StaCurrentContextSlot), U8(4), | |
757 B(PopContext), R(3), | |
758 B(PopContext), R(2), | |
759 B(LdaZero), | |
760 B(StaContextSlot), R(1), U8(9), U8(0), | |
761 B(JumpLoop), U8(120), I8(0), | |
762 B(Jump), U8(44), | |
763 B(Star), R(13), | |
764 B(Ldar), R(closure), | |
765 B(CreateCatchContext), R(13), U8(8), U8(9), | |
766 B(PushContext), R(2), | |
767 B(Star), R(12), | |
768 B(LdaContextSlot), R(1), U8(9), U8(0), | |
769 B(Star), R(13), | |
770 B(LdaSmi), I8(2), | |
771 B(TestEqualStrict), R(13), U8(15), | |
772 B(JumpIfFalse), U8(8), | |
773 B(LdaSmi), I8(1), | |
774 B(StaContextSlot), R(1), U8(9), U8(0), | |
775 B(LdaImmutableCurrentContextSlot), U8(4), | |
776 B(Star), R(13), | |
777 B(CallRuntime), U16(Runtime::kReThrow), R(13), U8(1), | |
778 B(PopContext), R(2), | |
779 B(LdaSmi), I8(-1), | |
780 B(Star), R(9), | 759 B(Star), R(9), |
781 B(Jump), U8(7), | |
782 B(Star), R(10), | |
783 B(LdaZero), | |
784 B(Star), R(9), | |
785 B(LdaTheHole), | |
786 B(SetPendingMessage), | |
787 B(Star), R(11), | |
788 B(LdaContextSlot), R(1), U8(9), U8(0), | |
789 B(Star), R(12), | |
790 B(LdaZero), | |
791 B(TestEqualStrict), R(12), U8(16), | |
792 B(JumpIfTrue), U8(150), | |
793 B(LdaContextSlot), R(1), U8(7), U8(0), | |
794 B(Star), R(12), | |
795 B(LdaNamedProperty), R(12), U8(10), U8(17), | |
796 B(StaContextSlot), R(1), U8(11), U8(0), | |
797 B(LdaContextSlot), R(1), U8(11), U8(0), | |
798 B(TestUndetectable), | 760 B(TestUndetectable), |
799 B(JumpIfFalse), U8(4), | 761 B(JumpIfFalse), U8(4), |
800 B(Jump), U8(127), | 762 B(Jump), U8(93), |
801 B(LdaContextSlot), R(1), U8(9), U8(0), | 763 B(LdaSmi), I8(1), |
802 B(Star), R(12), | 764 B(TestEqualStrict), R(7), U8(20), |
803 B(LdaSmi), I8(1), | 765 B(JumpIfFalse), U8(61), |
804 B(TestEqualStrict), R(12), U8(20), | 766 B(Ldar), R(9), |
805 B(JumpIfFalse), U8(69), | |
806 B(LdaContextSlot), R(1), U8(11), U8(0), | |
807 B(TestTypeOf), U8(5), | 767 B(TestTypeOf), U8(5), |
808 B(JumpIfFalse), U8(4), | 768 B(JumpIfFalse), U8(4), |
809 B(Jump), U8(18), | 769 B(Jump), U8(18), |
810 B(Wide), B(LdaSmi), I16(130), | 770 B(Wide), B(LdaSmi), I16(130), |
811 B(Star), R(12), | 771 B(Star), R(21), |
812 B(LdaConstant), U8(11), | 772 B(LdaConstant), U8(8), |
813 B(Star), R(13), | 773 B(Star), R(22), |
814 B(CallRuntime), U16(Runtime::kNewTypeError), R(12), U8(2), | 774 B(CallRuntime), U16(Runtime::kNewTypeError), R(21), U8(2), |
815 B(Throw), | 775 B(Throw), |
816 B(Mov), R(context), R(12), | 776 B(Mov), R(context), R(21), |
817 B(LdaContextSlot), R(1), U8(11), U8(0), | 777 B(Mov), R(9), R(22), |
818 B(Star), R(13), | 778 B(Mov), R(5), R(23), |
819 B(LdaContextSlot), R(1), U8(7), U8(0), | 779 B(InvokeIntrinsic), U8(Runtime::k_Call), R(22), U8(2), |
820 B(Star), R(14), | |
821 B(InvokeIntrinsic), U8(Runtime::k_Call), R(13), U8(2), | |
822 B(Jump), U8(20), | 780 B(Jump), U8(20), |
823 B(Star), R(13), | 781 B(Star), R(22), |
824 B(Ldar), R(closure), | 782 B(Ldar), R(closure), |
825 B(CreateCatchContext), R(13), U8(8), U8(12), | 783 B(CreateCatchContext), R(22), U8(5), U8(9), |
826 B(Star), R(12), | 784 B(Star), R(21), |
827 B(LdaTheHole), | 785 B(LdaTheHole), |
828 B(SetPendingMessage), | 786 B(SetPendingMessage), |
829 B(Ldar), R(12), | 787 B(Ldar), R(21), |
830 B(PushContext), R(2), | 788 B(PushContext), R(12), |
831 B(PopContext), R(2), | 789 B(PopContext), R(12), |
832 B(Jump), U8(47), | 790 B(Jump), U8(27), |
833 B(LdaContextSlot), R(1), U8(11), U8(0), | 791 B(Mov), R(9), R(21), |
834 B(Star), R(12), | 792 B(Mov), R(5), R(22), |
835 B(LdaContextSlot), R(1), U8(7), U8(0), | 793 B(InvokeIntrinsic), U8(Runtime::k_Call), R(21), U8(2), |
836 B(Star), R(13), | 794 B(Star), R(10), |
837 B(InvokeIntrinsic), U8(Runtime::k_Call), R(12), U8(2), | 795 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(10), U8(1), |
838 B(StaContextSlot), R(1), U8(12), U8(0), | |
839 B(LdaContextSlot), R(1), U8(12), U8(0), | |
840 B(Star), R(12), | |
841 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(12), U8(1), | |
842 B(JumpIfToBooleanFalse), U8(4), | 796 B(JumpIfToBooleanFalse), U8(4), |
843 B(Jump), U8(13), | 797 B(Jump), U8(7), |
844 B(LdaContextSlot), R(1), U8(12), U8(0), | 798 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(10), U8(1), |
845 B(Star), R(12), | 799 B(Ldar), R(20), |
846 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(12), U8(1), | 800 B(SetPendingMessage), |
847 B(Ldar), R(11), | 801 B(LdaZero), |
848 B(SetPendingMessage), | 802 B(TestEqualStrictNoFeedback), R(18), |
849 B(LdaZero), | 803 B(JumpIfFalse), U8(11), |
850 B(TestEqualStrictNoFeedback), R(9), | 804 B(LdaSmi), I8(1), |
851 B(JumpIfFalse), U8(13), | 805 B(Star), R(15), |
852 B(PopContext), R(1), | 806 B(Mov), R(19), R(16), |
853 B(LdaSmi), I8(1), | 807 B(Jump), U8(31), |
854 B(Star), R(6), | |
855 B(Mov), R(10), R(7), | |
856 B(Jump), U8(33), | |
857 B(PopContext), R(1), | |
858 B(LdaUndefined), | 808 B(LdaUndefined), |
859 B(Star), R(9), | 809 B(Star), R(18), |
860 B(LdaTrue), | 810 B(LdaTrue), |
861 B(Star), R(10), | 811 B(Star), R(19), |
862 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(9),
U8(2), | 812 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(18)
, U8(2), |
863 B(Star), R(7), | 813 B(Star), R(16), |
864 B(LdaZero), | 814 B(LdaZero), |
865 B(Star), R(6), | 815 B(Star), R(15), |
866 B(Jump), U8(14), | 816 B(Jump), U8(14), |
867 B(LdaSmi), I8(-1), | 817 B(LdaSmi), I8(-1), |
868 B(Star), R(6), | 818 B(Star), R(15), |
869 B(Jump), U8(8), | 819 B(Jump), U8(8), |
870 B(Star), R(7), | 820 B(Star), R(16), |
871 B(LdaSmi), I8(1), | 821 B(LdaSmi), I8(1), |
872 B(Star), R(6), | 822 B(Star), R(15), |
873 B(LdaTheHole), | 823 B(LdaTheHole), |
874 B(SetPendingMessage), | 824 B(SetPendingMessage), |
875 B(Star), R(8), | 825 B(Star), R(17), |
876 B(LdaImmutableCurrentContextSlot), U8(5), | 826 B(InvokeIntrinsic), U8(Runtime::k_GeneratorClose), R(3), U8(1), |
877 B(Star), R(9), | 827 B(Ldar), R(17), |
878 B(InvokeIntrinsic), U8(Runtime::k_GeneratorClose), R(9), U8(1), | 828 B(SetPendingMessage), |
879 B(Ldar), R(8), | 829 B(Ldar), R(15), |
880 B(SetPendingMessage), | 830 B(SwitchOnSmiNoFeedback), U8(11), U8(2), I8(0), |
881 B(Ldar), R(6), | |
882 B(SwitchOnSmiNoFeedback), U8(14), U8(2), I8(0), | |
883 B(Jump), U8(8), | 831 B(Jump), U8(8), |
884 B(Ldar), R(7), | 832 B(Ldar), R(16), |
885 /* 55 S> */ B(Return), | 833 /* 55 S> */ B(Return), |
886 B(Ldar), R(7), | 834 B(Ldar), R(16), |
887 B(ReThrow), | 835 B(ReThrow), |
888 B(LdaUndefined), | 836 B(LdaUndefined), |
889 /* 55 S> */ B(Return), | 837 /* 55 S> */ B(Return), |
890 ] | 838 ] |
891 constant pool: [ | 839 constant pool: [ |
892 Smi [56], | 840 Smi [54], |
893 FIXED_ARRAY_TYPE, | |
894 SYMBOL_TYPE, | 841 SYMBOL_TYPE, |
895 ONE_BYTE_INTERNALIZED_STRING_TYPE ["next"], | 842 ONE_BYTE_INTERNALIZED_STRING_TYPE ["next"], |
896 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"], | 843 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"], |
897 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"], | 844 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"], |
898 FIXED_ARRAY_TYPE, | |
899 FIXED_ARRAY_TYPE, | |
900 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], | 845 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], |
901 FIXED_ARRAY_TYPE, | 846 FIXED_ARRAY_TYPE, |
902 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], | 847 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], |
903 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], | 848 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], |
904 FIXED_ARRAY_TYPE, | 849 FIXED_ARRAY_TYPE, |
905 Smi [444], | 850 Smi [298], |
906 Smi [6], | 851 Smi [6], |
907 Smi [9], | 852 Smi [9], |
908 ] | 853 ] |
909 handlers: [ | 854 handlers: [ |
910 [55, 544, 550], | 855 [55, 396, 402], |
911 [134, 331, 337], | 856 [121, 239, 245], |
912 [137, 287, 289], | 857 [124, 203, 205], |
913 [423, 439, 441], | 858 [305, 315, 317], |
914 ] | 859 ] |
915 | 860 |
916 --- | 861 --- |
917 snippet: " | 862 snippet: " |
918 function* f(arr) { | 863 function* f(arr) { |
919 for (let x of arr) yield x; | 864 for (let x of arr) yield x; |
920 } | 865 } |
921 f([1, 2, 3]); | 866 f([1, 2, 3]); |
922 " | 867 " |
923 frame size: 17 | 868 frame size: 26 |
924 parameter count: 2 | 869 parameter count: 2 |
925 bytecode array length: 681 | 870 bytecode array length: 535 |
926 bytecodes: [ | 871 bytecodes: [ |
927 B(Ldar), R(new_target), | 872 B(Ldar), R(new_target), |
928 B(JumpIfUndefined), U8(25), | 873 B(JumpIfUndefined), U8(25), |
929 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_ta
rget), U8(1), | 874 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_ta
rget), U8(1), |
930 B(PushContext), R(4), | 875 B(PushContext), R(13), |
931 B(ResumeGenerator), R(new_target), | 876 B(ResumeGenerator), R(new_target), |
932 B(Star), R(3), | 877 B(Star), R(12), |
933 B(SwitchOnSmiNoFeedback), U8(0), U8(2), I8(0), | 878 B(SwitchOnSmiNoFeedback), U8(0), U8(2), I8(0), |
934 B(LdaSmi), I8(79), | 879 B(LdaSmi), I8(79), |
935 B(Star), R(5), | 880 B(Star), R(14), |
936 B(CallRuntime), U16(Runtime::kAbort), R(5), U8(1), | 881 B(CallRuntime), U16(Runtime::kAbort), R(14), U8(1), |
937 B(LdaSmi), I8(-2), | 882 B(LdaSmi), I8(-2), |
938 B(Star), R(3), | 883 B(Star), R(12), |
939 B(CreateFunctionContext), U8(9), | 884 B(CreateFunctionContext), U8(1), |
940 B(PushContext), R(0), | 885 B(PushContext), R(10), |
941 B(Ldar), R(arg0), | 886 B(Ldar), R(arg0), |
942 B(StaCurrentContextSlot), U8(4), | 887 B(StaCurrentContextSlot), U8(4), |
943 B(Mov), R(closure), R(5), | 888 B(Mov), R(closure), R(14), |
944 B(Mov), R(this), R(6), | 889 B(Mov), R(this), R(15), |
945 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(5)
, U8(2), | 890 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(14
), U8(2), |
946 B(StaCurrentContextSlot), U8(5), | 891 B(Star), R(2), |
947 /* 11 E> */ B(StackCheck), | 892 /* 11 E> */ B(StackCheck), |
948 B(Mov), R(context), R(7), | 893 B(Mov), R(context), R(16), |
949 B(LdaImmutableCurrentContextSlot), U8(5), | 894 B(LdaZero), |
950 B(Star), R(8), | 895 B(Mov), R(2), R(18), |
951 B(LdaImmutableCurrentContextSlot), U8(5), | 896 B(Mov), R(2), R(17), |
952 B(Star), R(9), | 897 /* 11 E> */ B(SuspendGenerator), R(17), U8(0), |
953 B(LdaZero), | 898 B(Ldar), R(18), |
954 /* 11 E> */ B(SuspendGenerator), R(8), U8(0), | 899 /* 49 S> */ B(Return), |
955 B(Ldar), R(9), | 900 B(LdaSmi), I8(-2), |
956 /* 49 S> */ B(Return), | 901 B(Star), R(12), |
957 B(LdaSmi), I8(-2), | 902 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(17), U8(1), |
958 B(Star), R(3), | 903 B(Star), R(18), |
959 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(8), U8(1), | 904 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(17)
, U8(1), |
960 B(Star), R(9), | 905 B(Star), R(19), |
961 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(8),
U8(1), | 906 B(LdaZero), |
962 B(Star), R(10), | 907 B(TestEqualStrictNoFeedback), R(19), |
963 B(LdaZero), | |
964 B(TestEqualStrictNoFeedback), R(10), | |
965 B(JumpIfTrue), U8(28), | 908 B(JumpIfTrue), U8(28), |
966 B(LdaSmi), I8(2), | 909 B(LdaSmi), I8(2), |
967 B(TestEqualStrictNoFeedback), R(10), | 910 B(TestEqualStrictNoFeedback), R(19), |
968 B(JumpIfTrue), U8(19), | 911 B(JumpIfTrue), U8(19), |
969 B(LdaTrue), | 912 B(LdaTrue), |
970 B(Star), R(12), | 913 B(Star), R(21), |
971 B(Mov), R(9), R(11), | 914 B(Mov), R(18), R(20), |
972 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(11)
, U8(2), | 915 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(20)
, U8(2), |
973 B(Star), R(6), | 916 B(Star), R(15), |
974 B(LdaZero), | 917 B(LdaZero), |
975 B(Star), R(5), | 918 B(Star), R(14), |
976 B(JumpConstant), U8(16), | 919 B(JumpConstant), U8(14), |
977 B(Ldar), R(9), | 920 B(Ldar), R(18), |
978 /* 11 E> */ B(Throw), | 921 /* 11 E> */ B(Throw), |
979 B(Ldar), R(closure), | 922 B(LdaZero), |
980 B(CreateBlockContext), U8(2), | 923 B(Star), R(6), |
981 B(PushContext), R(1), | 924 B(Mov), R(context), R(19), |
982 B(LdaTheHole), | 925 B(Mov), R(context), R(20), |
983 B(StaCurrentContextSlot), U8(4), | 926 /* 35 S> */ B(LdaImmutableCurrentContextSlot), U8(4), |
984 B(LdaZero), | 927 B(Star), R(21), |
985 B(StaContextSlot), R(1), U8(9), U8(0), | 928 B(LdaNamedProperty), R(21), U8(2), U8(3), |
986 B(Mov), R(context), R(10), | 929 B(Star), R(22), |
987 B(Mov), R(context), R(11), | 930 B(CallProperty0), R(22), R(21), U8(5), |
988 /* 35 S> */ B(LdaImmutableContextSlot), R(1), U8(4), U8(0), | |
989 B(Star), R(12), | |
990 B(LdaNamedProperty), R(12), U8(3), U8(3), | |
991 B(Star), R(13), | |
992 B(CallProperty0), R(13), R(12), U8(5), | |
993 B(JumpIfJSReceiver), U8(7), | 931 B(JumpIfJSReceiver), U8(7), |
994 B(CallRuntime), U16(Runtime::kThrowSymbolIteratorInvalid), R(0),
U8(0), | 932 B(CallRuntime), U16(Runtime::kThrowSymbolIteratorInvalid), R(0),
U8(0), |
995 /* 35 E> */ B(StaContextSlot), R(1), U8(7), U8(0), | 933 B(Star), R(4), |
996 B(Ldar), R(3), | 934 B(Ldar), R(12), |
997 B(SwitchOnSmiNoFeedback), U8(4), U8(1), I8(1), | 935 B(SwitchOnSmiNoFeedback), U8(3), U8(1), I8(1), |
998 B(LdaSmi), I8(-2), | 936 B(LdaSmi), I8(-2), |
999 B(TestEqualStrictNoFeedback), R(3), | 937 /* 35 E> */ B(TestEqualStrictNoFeedback), R(12), |
1000 B(JumpIfTrue), U8(11), | 938 B(JumpIfTrue), U8(11), |
1001 B(LdaSmi), I8(79), | 939 B(LdaSmi), I8(79), |
1002 B(Star), R(12), | 940 B(Star), R(21), |
1003 B(CallRuntime), U16(Runtime::kAbort), R(12), U8(1), | 941 B(CallRuntime), U16(Runtime::kAbort), R(21), U8(1), |
1004 /* 30 S> */ B(LdaContextSlot), R(1), U8(7), U8(0), | 942 /* 30 S> */ B(LdaNamedProperty), R(4), U8(4), U8(9), |
1005 B(Star), R(13), | 943 B(Star), R(21), |
1006 B(LdaNamedProperty), R(13), U8(5), U8(9), | 944 B(CallProperty0), R(21), R(4), U8(7), |
1007 B(Star), R(12), | 945 B(Star), R(5), |
1008 B(CallProperty0), R(12), R(13), U8(7), | 946 /* 30 E> */ B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(5), U8(1), |
1009 /* 30 E> */ B(StaContextSlot), R(1), U8(8), U8(0), | |
1010 B(Star), R(12), | |
1011 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(12), U8(1), | |
1012 B(ToBooleanLogicalNot), | 947 B(ToBooleanLogicalNot), |
1013 B(JumpIfFalse), U8(13), | 948 B(JumpIfFalse), U8(7), |
1014 B(LdaContextSlot), R(1), U8(8), U8(0), | 949 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(5), U8(1), |
1015 B(Star), R(12), | 950 B(LdaNamedProperty), R(5), U8(5), U8(11), |
1016 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(12), U8(1), | 951 B(JumpIfToBooleanTrue), U8(95), |
1017 B(LdaContextSlot), R(1), U8(8), U8(0), | 952 B(LdaNamedProperty), R(5), U8(6), U8(13), |
1018 B(Star), R(12), | 953 B(Star), R(7), |
1019 B(LdaNamedProperty), R(12), U8(6), U8(11), | 954 B(LdaSmi), I8(2), |
1020 B(JumpIfToBooleanTrue), U8(132), | 955 B(Star), R(6), |
1021 B(LdaContextSlot), R(1), U8(8), U8(0), | 956 B(Mov), R(7), R(3), |
1022 B(Star), R(12), | |
1023 B(LdaNamedProperty), R(12), U8(7), U8(13), | |
1024 B(StaContextSlot), R(1), U8(10), U8(0), | |
1025 B(LdaSmi), I8(2), | |
1026 B(StaContextSlot), R(1), U8(9), U8(0), | |
1027 B(LdaContextSlot), R(1), U8(10), U8(0), | |
1028 B(StaContextSlot), R(1), U8(6), U8(0), | |
1029 /* 21 E> */ B(StackCheck), | 957 /* 21 E> */ B(StackCheck), |
| 958 B(Mov), R(3), R(0), |
| 959 /* 40 S> */ B(LdaFalse), |
| 960 B(Star), R(23), |
| 961 B(Mov), R(3), R(22), |
| 962 /* 46 E> */ B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(22)
, U8(2), |
| 963 B(Star), R(22), |
| 964 B(LdaSmi), I8(1), |
| 965 B(Mov), R(2), R(21), |
| 966 B(SuspendGenerator), R(21), U8(0), |
| 967 B(Ldar), R(22), |
| 968 /* 49 S> */ B(Return), |
| 969 B(LdaSmi), I8(-2), |
| 970 B(Star), R(12), |
| 971 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(21), U8(1), |
| 972 B(Star), R(22), |
| 973 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(21)
, U8(1), |
| 974 B(Star), R(23), |
| 975 B(LdaZero), |
| 976 B(TestEqualStrictNoFeedback), R(23), |
| 977 B(JumpIfTrue), U8(28), |
| 978 B(LdaSmi), I8(2), |
| 979 B(TestEqualStrictNoFeedback), R(23), |
| 980 B(JumpIfTrue), U8(19), |
| 981 B(LdaTrue), |
| 982 B(Star), R(25), |
| 983 B(Mov), R(22), R(24), |
| 984 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(24)
, U8(2), |
| 985 B(Star), R(18), |
| 986 B(LdaZero), |
| 987 B(Star), R(17), |
| 988 B(Jump), U8(59), |
| 989 B(Ldar), R(22), |
| 990 /* 40 E> */ B(Throw), |
| 991 B(LdaZero), |
| 992 B(Star), R(6), |
| 993 B(JumpLoop), U8(141), I8(0), |
| 994 B(Jump), U8(36), |
| 995 B(Star), R(21), |
1030 B(Ldar), R(closure), | 996 B(Ldar), R(closure), |
1031 B(CreateBlockContext), U8(8), | 997 B(CreateCatchContext), R(21), U8(7), U8(8), |
1032 B(PushContext), R(2), | 998 B(PushContext), R(11), |
| 999 B(Star), R(20), |
| 1000 B(LdaSmi), I8(2), |
| 1001 B(TestEqualStrict), R(6), U8(15), |
| 1002 B(JumpIfFalse), U8(6), |
| 1003 B(LdaSmi), I8(1), |
| 1004 B(Star), R(6), |
| 1005 B(LdaImmutableCurrentContextSlot), U8(4), |
| 1006 B(Star), R(21), |
| 1007 B(CallRuntime), U16(Runtime::kReThrow), R(21), U8(1), |
| 1008 B(PopContext), R(11), |
| 1009 B(LdaSmi), I8(-1), |
| 1010 B(Star), R(17), |
| 1011 B(Jump), U8(8), |
| 1012 B(Star), R(18), |
| 1013 B(LdaSmi), I8(1), |
| 1014 B(Star), R(17), |
1033 B(LdaTheHole), | 1015 B(LdaTheHole), |
1034 B(StaCurrentContextSlot), U8(4), | 1016 B(SetPendingMessage), |
1035 B(LdaContextSlot), R(1), U8(6), U8(0), | 1017 B(Star), R(19), |
1036 B(StaCurrentContextSlot), U8(4), | 1018 B(LdaZero), |
1037 /* 40 S> */ B(LdaImmutableContextSlot), R(1), U8(5), U8(0), | 1019 B(TestEqualStrict), R(6), U8(16), |
1038 B(Star), R(12), | 1020 B(JumpIfTrue), U8(104), |
1039 B(LdaImmutableCurrentContextSlot), U8(4), | 1021 B(LdaNamedProperty), R(4), U8(9), U8(17), |
1040 B(Star), R(13), | |
1041 B(LdaFalse), | |
1042 B(Star), R(14), | |
1043 /* 46 E> */ B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(13)
, U8(2), | |
1044 B(Star), R(13), | |
1045 B(LdaSmi), I8(1), | |
1046 B(SuspendGenerator), R(12), U8(0), | |
1047 B(Ldar), R(13), | |
1048 /* 49 S> */ B(Return), | |
1049 B(LdaSmi), I8(-2), | |
1050 B(Star), R(3), | |
1051 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(12), U8(1), | |
1052 B(Star), R(13), | |
1053 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(12)
, U8(1), | |
1054 B(Star), R(14), | |
1055 B(LdaZero), | |
1056 B(TestEqualStrictNoFeedback), R(14), | |
1057 B(JumpIfTrue), U8(30), | |
1058 B(LdaSmi), I8(2), | |
1059 B(TestEqualStrictNoFeedback), R(14), | |
1060 B(JumpIfTrue), U8(21), | |
1061 B(LdaTrue), | |
1062 B(Star), R(16), | |
1063 B(Mov), R(13), R(15), | |
1064 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(15)
, U8(2), | |
1065 B(PopContext), R(2), | |
1066 B(Star), R(9), | |
1067 B(LdaZero), | |
1068 B(Star), R(8), | 1022 B(Star), R(8), |
1069 B(Jump), U8(71), | |
1070 B(Ldar), R(13), | |
1071 /* 40 E> */ B(Throw), | |
1072 B(PopContext), R(2), | |
1073 B(LdaZero), | |
1074 B(StaContextSlot), R(1), U8(9), U8(0), | |
1075 B(JumpLoop), U8(200), I8(0), | |
1076 B(Jump), U8(44), | |
1077 B(Star), R(12), | |
1078 B(Ldar), R(closure), | |
1079 B(CreateCatchContext), R(12), U8(9), U8(10), | |
1080 B(PushContext), R(2), | |
1081 B(Star), R(11), | |
1082 B(LdaContextSlot), R(1), U8(9), U8(0), | |
1083 B(Star), R(12), | |
1084 B(LdaSmi), I8(2), | |
1085 B(TestEqualStrict), R(12), U8(15), | |
1086 B(JumpIfFalse), U8(8), | |
1087 B(LdaSmi), I8(1), | |
1088 B(StaContextSlot), R(1), U8(9), U8(0), | |
1089 B(LdaImmutableCurrentContextSlot), U8(4), | |
1090 B(Star), R(12), | |
1091 B(CallRuntime), U16(Runtime::kReThrow), R(12), U8(1), | |
1092 B(PopContext), R(2), | |
1093 B(LdaSmi), I8(-1), | |
1094 B(Star), R(8), | |
1095 B(Jump), U8(8), | |
1096 B(Star), R(9), | |
1097 B(LdaSmi), I8(1), | |
1098 B(Star), R(8), | |
1099 B(LdaTheHole), | |
1100 B(SetPendingMessage), | |
1101 B(Star), R(10), | |
1102 B(LdaContextSlot), R(1), U8(9), U8(0), | |
1103 B(Star), R(11), | |
1104 B(LdaZero), | |
1105 B(TestEqualStrict), R(11), U8(16), | |
1106 B(JumpIfTrue), U8(150), | |
1107 B(LdaContextSlot), R(1), U8(7), U8(0), | |
1108 B(Star), R(11), | |
1109 B(LdaNamedProperty), R(11), U8(11), U8(17), | |
1110 B(StaContextSlot), R(1), U8(11), U8(0), | |
1111 B(LdaContextSlot), R(1), U8(11), U8(0), | |
1112 B(TestUndetectable), | 1023 B(TestUndetectable), |
1113 B(JumpIfFalse), U8(4), | 1024 B(JumpIfFalse), U8(4), |
1114 B(Jump), U8(127), | 1025 B(Jump), U8(93), |
1115 B(LdaContextSlot), R(1), U8(9), U8(0), | 1026 B(LdaSmi), I8(1), |
1116 B(Star), R(11), | 1027 B(TestEqualStrict), R(6), U8(20), |
1117 B(LdaSmi), I8(1), | 1028 B(JumpIfFalse), U8(61), |
1118 B(TestEqualStrict), R(11), U8(20), | 1029 B(Ldar), R(8), |
1119 B(JumpIfFalse), U8(69), | |
1120 B(LdaContextSlot), R(1), U8(11), U8(0), | |
1121 B(TestTypeOf), U8(5), | 1030 B(TestTypeOf), U8(5), |
1122 B(JumpIfFalse), U8(4), | 1031 B(JumpIfFalse), U8(4), |
1123 B(Jump), U8(18), | 1032 B(Jump), U8(18), |
1124 B(Wide), B(LdaSmi), I16(130), | 1033 B(Wide), B(LdaSmi), I16(130), |
1125 B(Star), R(11), | 1034 B(Star), R(20), |
1126 B(LdaConstant), U8(12), | 1035 B(LdaConstant), U8(10), |
1127 B(Star), R(12), | 1036 B(Star), R(21), |
1128 B(CallRuntime), U16(Runtime::kNewTypeError), R(11), U8(2), | 1037 B(CallRuntime), U16(Runtime::kNewTypeError), R(20), U8(2), |
1129 B(Throw), | 1038 B(Throw), |
1130 B(Mov), R(context), R(11), | 1039 B(Mov), R(context), R(20), |
1131 B(LdaContextSlot), R(1), U8(11), U8(0), | 1040 B(Mov), R(8), R(21), |
1132 B(Star), R(12), | 1041 B(Mov), R(4), R(22), |
1133 B(LdaContextSlot), R(1), U8(7), U8(0), | 1042 B(InvokeIntrinsic), U8(Runtime::k_Call), R(21), U8(2), |
1134 B(Star), R(13), | |
1135 B(InvokeIntrinsic), U8(Runtime::k_Call), R(12), U8(2), | |
1136 B(Jump), U8(20), | 1043 B(Jump), U8(20), |
1137 B(Star), R(12), | 1044 B(Star), R(21), |
1138 B(Ldar), R(closure), | 1045 B(Ldar), R(closure), |
1139 B(CreateCatchContext), R(12), U8(9), U8(13), | 1046 B(CreateCatchContext), R(21), U8(7), U8(11), |
1140 B(Star), R(11), | 1047 B(Star), R(20), |
1141 B(LdaTheHole), | 1048 B(LdaTheHole), |
1142 B(SetPendingMessage), | 1049 B(SetPendingMessage), |
1143 B(Ldar), R(11), | 1050 B(Ldar), R(20), |
1144 B(PushContext), R(2), | 1051 B(PushContext), R(11), |
1145 B(PopContext), R(2), | 1052 B(PopContext), R(11), |
1146 B(Jump), U8(47), | 1053 B(Jump), U8(27), |
1147 B(LdaContextSlot), R(1), U8(11), U8(0), | 1054 B(Mov), R(8), R(20), |
1148 B(Star), R(11), | 1055 B(Mov), R(4), R(21), |
1149 B(LdaContextSlot), R(1), U8(7), U8(0), | 1056 B(InvokeIntrinsic), U8(Runtime::k_Call), R(20), U8(2), |
1150 B(Star), R(12), | 1057 B(Star), R(9), |
1151 B(InvokeIntrinsic), U8(Runtime::k_Call), R(11), U8(2), | 1058 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(9), U8(1), |
1152 B(StaContextSlot), R(1), U8(12), U8(0), | |
1153 B(LdaContextSlot), R(1), U8(12), U8(0), | |
1154 B(Star), R(11), | |
1155 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(11), U8(1), | |
1156 B(JumpIfToBooleanFalse), U8(4), | 1059 B(JumpIfToBooleanFalse), U8(4), |
1157 B(Jump), U8(13), | 1060 B(Jump), U8(7), |
1158 B(LdaContextSlot), R(1), U8(12), U8(0), | 1061 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(9), U8(1), |
1159 B(Star), R(11), | 1062 B(Ldar), R(19), |
1160 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(11), U8(1), | 1063 B(SetPendingMessage), |
1161 B(Ldar), R(10), | 1064 B(Ldar), R(17), |
1162 B(SetPendingMessage), | 1065 B(SwitchOnSmiNoFeedback), U8(12), U8(2), I8(0), |
1163 B(Ldar), R(8), | 1066 B(Jump), U8(19), |
1164 B(SwitchOnSmiNoFeedback), U8(14), U8(2), I8(0), | 1067 B(LdaZero), |
1165 B(Jump), U8(23), | 1068 B(Star), R(14), |
1166 B(PopContext), R(1), | 1069 B(Mov), R(18), R(15), |
1167 B(LdaZero), | 1070 B(Jump), U8(40), |
1168 B(Star), R(5), | 1071 B(LdaSmi), I8(1), |
1169 B(Mov), R(9), R(6), | 1072 B(Star), R(14), |
1170 B(Jump), U8(44), | 1073 B(Mov), R(18), R(15), |
1171 B(PopContext), R(1), | 1074 B(Jump), U8(31), |
1172 B(LdaSmi), I8(1), | |
1173 B(Star), R(5), | |
1174 B(Mov), R(9), R(6), | |
1175 B(Jump), U8(33), | |
1176 B(PopContext), R(1), | |
1177 B(LdaUndefined), | 1075 B(LdaUndefined), |
1178 B(Star), R(8), | 1076 B(Star), R(17), |
1179 B(LdaTrue), | 1077 B(LdaTrue), |
1180 B(Star), R(9), | 1078 B(Star), R(18), |
1181 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(8),
U8(2), | 1079 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(17)
, U8(2), |
1182 B(Star), R(6), | 1080 B(Star), R(15), |
1183 B(LdaZero), | 1081 B(LdaZero), |
1184 B(Star), R(5), | 1082 B(Star), R(14), |
1185 B(Jump), U8(14), | 1083 B(Jump), U8(14), |
1186 B(LdaSmi), I8(-1), | 1084 B(LdaSmi), I8(-1), |
1187 B(Star), R(5), | 1085 B(Star), R(14), |
1188 B(Jump), U8(8), | 1086 B(Jump), U8(8), |
1189 B(Star), R(6), | 1087 B(Star), R(15), |
1190 B(LdaSmi), I8(1), | 1088 B(LdaSmi), I8(1), |
1191 B(Star), R(5), | 1089 B(Star), R(14), |
1192 B(LdaTheHole), | 1090 B(LdaTheHole), |
1193 B(SetPendingMessage), | 1091 B(SetPendingMessage), |
1194 B(Star), R(7), | 1092 B(Star), R(16), |
1195 B(LdaImmutableCurrentContextSlot), U8(5), | 1093 B(InvokeIntrinsic), U8(Runtime::k_GeneratorClose), R(2), U8(1), |
1196 B(Star), R(8), | 1094 B(Ldar), R(16), |
1197 B(InvokeIntrinsic), U8(Runtime::k_GeneratorClose), R(8), U8(1), | 1095 B(SetPendingMessage), |
1198 B(Ldar), R(7), | 1096 B(Ldar), R(14), |
1199 B(SetPendingMessage), | 1097 B(SwitchOnSmiNoFeedback), U8(15), U8(2), I8(0), |
1200 B(Ldar), R(5), | |
1201 B(SwitchOnSmiNoFeedback), U8(17), U8(2), I8(0), | |
1202 B(Jump), U8(8), | 1098 B(Jump), U8(8), |
1203 B(Ldar), R(6), | 1099 B(Ldar), R(15), |
1204 /* 49 S> */ B(Return), | 1100 /* 49 S> */ B(Return), |
1205 B(Ldar), R(6), | 1101 B(Ldar), R(15), |
1206 B(ReThrow), | 1102 B(ReThrow), |
1207 B(LdaUndefined), | 1103 B(LdaUndefined), |
1208 /* 49 S> */ B(Return), | 1104 /* 49 S> */ B(Return), |
1209 ] | 1105 ] |
1210 constant pool: [ | 1106 constant pool: [ |
1211 Smi [56], | 1107 Smi [54], |
1212 Smi [150], | 1108 Smi [133], |
1213 FIXED_ARRAY_TYPE, | |
1214 SYMBOL_TYPE, | 1109 SYMBOL_TYPE, |
1215 Smi [142], | 1110 Smi [89], |
1216 ONE_BYTE_INTERNALIZED_STRING_TYPE ["next"], | 1111 ONE_BYTE_INTERNALIZED_STRING_TYPE ["next"], |
1217 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"], | 1112 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"], |
1218 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"], | 1113 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"], |
1219 FIXED_ARRAY_TYPE, | |
1220 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], | 1114 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], |
1221 FIXED_ARRAY_TYPE, | 1115 FIXED_ARRAY_TYPE, |
1222 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], | 1116 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], |
1223 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], | 1117 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], |
1224 FIXED_ARRAY_TYPE, | 1118 FIXED_ARRAY_TYPE, |
1225 Smi [6], | 1119 Smi [6], |
1226 Smi [16], | 1120 Smi [14], |
1227 Smi [538], | 1121 Smi [398], |
1228 Smi [6], | 1122 Smi [6], |
1229 Smi [9], | 1123 Smi [9], |
1230 ] | 1124 ] |
1231 handlers: [ | 1125 handlers: [ |
1232 [55, 638, 644], | 1126 [55, 496, 502], |
1233 [134, 411, 417], | 1127 [121, 327, 333], |
1234 [137, 367, 369], | 1128 [124, 291, 293], |
1235 [504, 520, 522], | 1129 [394, 404, 406], |
1236 ] | 1130 ] |
1237 | 1131 |
1238 --- | 1132 --- |
1239 snippet: " | 1133 snippet: " |
1240 async function f(arr) { | 1134 async function f(arr) { |
1241 for (let x of arr) { let y = x; } | 1135 for (let x of arr) { let y = x; } |
1242 } | 1136 } |
1243 f([1, 2, 3]); | 1137 f([1, 2, 3]); |
1244 " | 1138 " |
1245 frame size: 14 | 1139 frame size: 24 |
1246 parameter count: 2 | 1140 parameter count: 2 |
1247 bytecode array length: 550 | 1141 bytecode array length: 397 |
1248 bytecodes: [ | 1142 bytecodes: [ |
1249 B(CreateFunctionContext), U8(10), | 1143 B(CreateFunctionContext), U8(1), |
1250 B(PushContext), R(0), | 1144 B(PushContext), R(12), |
1251 B(Ldar), R(arg0), | 1145 B(Ldar), R(arg0), |
1252 B(StaCurrentContextSlot), U8(4), | 1146 B(StaCurrentContextSlot), U8(4), |
1253 /* 16 E> */ B(StackCheck), | 1147 /* 16 E> */ B(StackCheck), |
1254 B(LdaUndefined), | 1148 B(LdaUndefined), |
1255 B(Star), R(4), | 1149 B(Star), R(14), |
1256 B(CallJSRuntime), U8(%async_function_promise_create), R(4), U8(1
), | 1150 B(CallJSRuntime), U8(%async_function_promise_create), R(14), U8(
1), |
1257 B(StaCurrentContextSlot), U8(13), | 1151 B(Star), R(11), |
1258 B(Mov), R(context), R(6), | 1152 B(Mov), R(context), R(16), |
1259 B(Mov), R(context), R(7), | 1153 B(Mov), R(context), R(17), |
1260 B(Ldar), R(closure), | |
1261 B(CreateBlockContext), U8(0), | |
1262 B(PushContext), R(1), | |
1263 B(LdaTheHole), | |
1264 B(StaCurrentContextSlot), U8(4), | |
1265 B(LdaZero), | 1154 B(LdaZero), |
1266 B(StaContextSlot), R(1), U8(9), U8(0), | 1155 B(Star), R(7), |
1267 B(Mov), R(context), R(10), | 1156 B(Mov), R(context), R(20), |
1268 B(Mov), R(context), R(11), | 1157 B(Mov), R(context), R(21), |
1269 /* 40 S> */ B(LdaImmutableContextSlot), R(1), U8(4), U8(0), | 1158 /* 40 S> */ B(LdaImmutableCurrentContextSlot), U8(4), |
1270 B(Star), R(12), | 1159 B(Star), R(22), |
1271 B(LdaNamedProperty), R(12), U8(1), U8(3), | 1160 B(LdaNamedProperty), R(22), U8(0), U8(3), |
1272 B(Star), R(13), | 1161 B(Star), R(23), |
1273 B(CallProperty0), R(13), R(12), U8(5), | 1162 B(CallProperty0), R(23), R(22), U8(5), |
1274 B(JumpIfJSReceiver), U8(7), | 1163 B(JumpIfJSReceiver), U8(7), |
1275 B(CallRuntime), U16(Runtime::kThrowSymbolIteratorInvalid), R(0),
U8(0), | 1164 B(CallRuntime), U16(Runtime::kThrowSymbolIteratorInvalid), R(0),
U8(0), |
1276 /* 40 E> */ B(StaContextSlot), R(1), U8(7), U8(0), | 1165 B(Star), R(5), |
1277 /* 35 S> */ B(LdaContextSlot), R(1), U8(7), U8(0), | 1166 /* 35 S> */ B(LdaNamedProperty), R(5), U8(1), U8(9), |
1278 B(Star), R(13), | 1167 B(Star), R(22), |
1279 B(LdaNamedProperty), R(13), U8(2), U8(9), | 1168 B(CallProperty0), R(22), R(5), U8(7), |
1280 B(Star), R(12), | 1169 B(Star), R(6), |
1281 B(CallProperty0), R(12), R(13), U8(7), | 1170 /* 35 E> */ B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(6), U8(1), |
1282 /* 35 E> */ B(StaContextSlot), R(1), U8(8), U8(0), | |
1283 B(Star), R(12), | |
1284 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(12), U8(1), | |
1285 B(ToBooleanLogicalNot), | 1171 B(ToBooleanLogicalNot), |
1286 B(JumpIfFalse), U8(13), | 1172 B(JumpIfFalse), U8(7), |
1287 B(LdaContextSlot), R(1), U8(8), U8(0), | 1173 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(6), U8(1), |
1288 B(Star), R(12), | 1174 B(LdaNamedProperty), R(6), U8(2), U8(11), |
1289 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(12), U8(1), | 1175 B(JumpIfToBooleanTrue), U8(28), |
1290 B(LdaContextSlot), R(1), U8(8), U8(0), | 1176 B(LdaNamedProperty), R(6), U8(3), U8(13), |
1291 B(Star), R(12), | 1177 B(Star), R(8), |
1292 B(LdaNamedProperty), R(12), U8(3), U8(11), | |
1293 B(JumpIfToBooleanTrue), U8(73), | |
1294 B(LdaContextSlot), R(1), U8(8), U8(0), | |
1295 B(Star), R(12), | |
1296 B(LdaNamedProperty), R(12), U8(4), U8(13), | |
1297 B(StaContextSlot), R(1), U8(10), U8(0), | |
1298 B(LdaSmi), I8(2), | 1178 B(LdaSmi), I8(2), |
1299 B(StaContextSlot), R(1), U8(9), U8(0), | 1179 B(Star), R(7), |
1300 B(LdaContextSlot), R(1), U8(10), U8(0), | 1180 B(Mov), R(8), R(4), |
1301 B(StaContextSlot), R(1), U8(6), U8(0), | |
1302 /* 26 E> */ B(StackCheck), | 1181 /* 26 E> */ B(StackCheck), |
| 1182 B(Mov), R(4), R(1), |
| 1183 /* 55 S> */ B(Mov), R(1), R(0), |
| 1184 B(LdaZero), |
| 1185 B(Star), R(7), |
| 1186 B(JumpLoop), U8(53), I8(0), |
| 1187 B(Jump), U8(40), |
| 1188 B(Star), R(22), |
1303 B(Ldar), R(closure), | 1189 B(Ldar), R(closure), |
1304 B(CreateBlockContext), U8(5), | 1190 /* 55 E> */ B(CreateCatchContext), R(22), U8(4), U8(5), |
1305 B(PushContext), R(2), | 1191 B(Star), R(21), |
1306 B(LdaTheHole), | |
1307 B(StaCurrentContextSlot), U8(4), | |
1308 B(LdaContextSlot), R(1), U8(6), U8(0), | |
1309 B(StaCurrentContextSlot), U8(4), | |
1310 B(Ldar), R(closure), | |
1311 B(CreateBlockContext), U8(6), | |
1312 B(PushContext), R(3), | |
1313 B(LdaTheHole), | |
1314 B(StaCurrentContextSlot), U8(4), | |
1315 /* 55 S> */ B(LdaImmutableContextSlot), R(3), U8(4), U8(0), | |
1316 /* 55 E> */ B(StaCurrentContextSlot), U8(4), | |
1317 B(PopContext), R(3), | |
1318 B(PopContext), R(2), | |
1319 B(LdaZero), | |
1320 B(StaContextSlot), R(1), U8(9), U8(0), | |
1321 B(JumpLoop), U8(120), I8(0), | |
1322 B(Jump), U8(48), | |
1323 B(Star), R(12), | |
1324 B(Ldar), R(closure), | |
1325 B(CreateCatchContext), R(12), U8(7), U8(8), | |
1326 B(Star), R(11), | |
1327 B(LdaTheHole), | 1192 B(LdaTheHole), |
1328 B(SetPendingMessage), | 1193 B(SetPendingMessage), |
1329 B(Ldar), R(11), | 1194 B(Ldar), R(21), |
1330 B(PushContext), R(2), | 1195 B(PushContext), R(13), |
1331 B(LdaContextSlot), R(1), U8(9), U8(0), | |
1332 B(Star), R(12), | |
1333 B(LdaSmi), I8(2), | 1196 B(LdaSmi), I8(2), |
1334 B(TestEqualStrict), R(12), U8(15), | 1197 B(TestEqualStrict), R(7), U8(15), |
1335 B(JumpIfFalse), U8(8), | 1198 B(JumpIfFalse), U8(6), |
1336 B(LdaSmi), I8(1), | 1199 B(LdaSmi), I8(1), |
1337 B(StaContextSlot), R(1), U8(9), U8(0), | 1200 B(Star), R(7), |
1338 B(LdaImmutableCurrentContextSlot), U8(4), | 1201 B(LdaImmutableCurrentContextSlot), U8(4), |
1339 B(Star), R(12), | 1202 B(Star), R(22), |
1340 B(CallRuntime), U16(Runtime::kReThrow), R(12), U8(1), | 1203 B(CallRuntime), U16(Runtime::kReThrow), R(22), U8(1), |
1341 B(PopContext), R(2), | 1204 B(PopContext), R(13), |
1342 B(LdaSmi), I8(-1), | 1205 B(LdaSmi), I8(-1), |
1343 B(Star), R(8), | 1206 B(Star), R(18), |
1344 B(Jump), U8(7), | 1207 B(Jump), U8(7), |
1345 B(Star), R(9), | 1208 B(Star), R(19), |
1346 B(LdaZero), | 1209 B(LdaZero), |
1347 B(Star), R(8), | 1210 B(Star), R(18), |
1348 B(LdaTheHole), | 1211 B(LdaTheHole), |
1349 B(SetPendingMessage), | 1212 B(SetPendingMessage), |
1350 B(Star), R(10), | 1213 B(Star), R(20), |
1351 B(LdaContextSlot), R(1), U8(9), U8(0), | |
1352 B(Star), R(11), | |
1353 B(LdaZero), | 1214 B(LdaZero), |
1354 B(TestEqualStrict), R(11), U8(16), | 1215 B(TestEqualStrict), R(7), U8(16), |
1355 B(JumpIfTrue), U8(150), | 1216 B(JumpIfTrue), U8(104), |
1356 B(LdaContextSlot), R(1), U8(7), U8(0), | 1217 B(LdaNamedProperty), R(5), U8(6), U8(17), |
1357 B(Star), R(11), | 1218 B(Star), R(9), |
1358 B(LdaNamedProperty), R(11), U8(9), U8(17), | |
1359 B(StaContextSlot), R(1), U8(11), U8(0), | |
1360 B(LdaContextSlot), R(1), U8(11), U8(0), | |
1361 B(TestUndetectable), | 1219 B(TestUndetectable), |
1362 B(JumpIfFalse), U8(4), | 1220 B(JumpIfFalse), U8(4), |
1363 B(Jump), U8(127), | 1221 B(Jump), U8(93), |
1364 B(LdaContextSlot), R(1), U8(9), U8(0), | |
1365 B(Star), R(11), | |
1366 B(LdaSmi), I8(1), | 1222 B(LdaSmi), I8(1), |
1367 B(TestEqualStrict), R(11), U8(20), | 1223 B(TestEqualStrict), R(7), U8(20), |
1368 B(JumpIfFalse), U8(69), | 1224 B(JumpIfFalse), U8(61), |
1369 B(LdaContextSlot), R(1), U8(11), U8(0), | 1225 B(Ldar), R(9), |
1370 B(TestTypeOf), U8(5), | 1226 B(TestTypeOf), U8(5), |
1371 B(JumpIfFalse), U8(4), | 1227 B(JumpIfFalse), U8(4), |
1372 B(Jump), U8(18), | 1228 B(Jump), U8(18), |
1373 B(Wide), B(LdaSmi), I16(130), | 1229 B(Wide), B(LdaSmi), I16(130), |
1374 B(Star), R(11), | 1230 B(Star), R(21), |
1375 B(LdaConstant), U8(10), | 1231 B(LdaConstant), U8(7), |
1376 B(Star), R(12), | 1232 B(Star), R(22), |
1377 B(CallRuntime), U16(Runtime::kNewTypeError), R(11), U8(2), | 1233 B(CallRuntime), U16(Runtime::kNewTypeError), R(21), U8(2), |
1378 B(Throw), | 1234 B(Throw), |
1379 B(Mov), R(context), R(11), | 1235 B(Mov), R(context), R(21), |
1380 B(LdaContextSlot), R(1), U8(11), U8(0), | 1236 B(Mov), R(9), R(22), |
1381 B(Star), R(12), | 1237 B(Mov), R(5), R(23), |
1382 B(LdaContextSlot), R(1), U8(7), U8(0), | 1238 B(InvokeIntrinsic), U8(Runtime::k_Call), R(22), U8(2), |
1383 B(Star), R(13), | |
1384 B(InvokeIntrinsic), U8(Runtime::k_Call), R(12), U8(2), | |
1385 B(Jump), U8(20), | 1239 B(Jump), U8(20), |
1386 B(Star), R(12), | 1240 B(Star), R(22), |
1387 B(Ldar), R(closure), | 1241 B(Ldar), R(closure), |
1388 B(CreateCatchContext), R(12), U8(7), U8(11), | 1242 B(CreateCatchContext), R(22), U8(4), U8(8), |
1389 B(Star), R(11), | 1243 B(Star), R(21), |
1390 B(LdaTheHole), | 1244 B(LdaTheHole), |
1391 B(SetPendingMessage), | 1245 B(SetPendingMessage), |
1392 B(Ldar), R(11), | 1246 B(Ldar), R(21), |
1393 B(PushContext), R(2), | 1247 B(PushContext), R(13), |
1394 B(PopContext), R(2), | 1248 B(PopContext), R(13), |
1395 B(Jump), U8(47), | 1249 B(Jump), U8(27), |
1396 B(LdaContextSlot), R(1), U8(11), U8(0), | 1250 B(Mov), R(9), R(21), |
1397 B(Star), R(11), | 1251 B(Mov), R(5), R(22), |
1398 B(LdaContextSlot), R(1), U8(7), U8(0), | 1252 B(InvokeIntrinsic), U8(Runtime::k_Call), R(21), U8(2), |
1399 B(Star), R(12), | 1253 B(Star), R(10), |
1400 B(InvokeIntrinsic), U8(Runtime::k_Call), R(11), U8(2), | 1254 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(10), U8(1), |
1401 B(StaContextSlot), R(1), U8(12), U8(0), | |
1402 B(LdaContextSlot), R(1), U8(12), U8(0), | |
1403 B(Star), R(11), | |
1404 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(11), U8(1), | |
1405 B(JumpIfToBooleanFalse), U8(4), | 1255 B(JumpIfToBooleanFalse), U8(4), |
1406 B(Jump), U8(13), | 1256 B(Jump), U8(7), |
1407 B(LdaContextSlot), R(1), U8(12), U8(0), | 1257 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(10), U8(1), |
1408 B(Star), R(11), | 1258 B(Ldar), R(20), |
1409 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(11), U8(1), | |
1410 B(Ldar), R(10), | |
1411 B(SetPendingMessage), | 1259 B(SetPendingMessage), |
1412 B(LdaZero), | 1260 B(LdaZero), |
1413 B(TestEqualStrictNoFeedback), R(8), | 1261 B(TestEqualStrictNoFeedback), R(18), |
1414 B(JumpIfFalse), U8(5), | 1262 B(JumpIfFalse), U8(5), |
1415 B(Ldar), R(9), | 1263 B(Ldar), R(19), |
1416 B(ReThrow), | 1264 B(ReThrow), |
1417 B(PopContext), R(1), | |
1418 B(LdaUndefined), | 1265 B(LdaUndefined), |
1419 B(Star), R(8), | 1266 B(Star), R(18), |
1420 B(LdaCurrentContextSlot), U8(13), | |
1421 B(Star), R(9), | |
1422 B(LdaUndefined), | 1267 B(LdaUndefined), |
1423 B(Star), R(10), | 1268 B(Star), R(20), |
1424 B(CallJSRuntime), U8(%promise_resolve), R(8), U8(3), | 1269 B(Mov), R(11), R(19), |
1425 B(LdaCurrentContextSlot), U8(13), | 1270 B(CallJSRuntime), U8(%promise_resolve), R(18), U8(3), |
1426 B(Star), R(5), | |
1427 B(LdaZero), | 1271 B(LdaZero), |
1428 B(Star), R(4), | 1272 B(Star), R(14), |
1429 B(Jump), U8(65), | 1273 B(Mov), R(11), R(15), |
1430 B(Jump), U8(51), | 1274 B(Jump), U8(59), |
1431 B(Star), R(8), | 1275 B(Jump), U8(45), |
| 1276 B(Star), R(18), |
1432 B(Ldar), R(closure), | 1277 B(Ldar), R(closure), |
1433 B(CreateCatchContext), R(8), U8(7), U8(12), | 1278 B(CreateCatchContext), R(18), U8(4), U8(9), |
1434 B(Star), R(7), | 1279 B(Star), R(17), |
1435 B(LdaTheHole), | 1280 B(LdaTheHole), |
1436 B(SetPendingMessage), | 1281 B(SetPendingMessage), |
1437 B(Ldar), R(7), | 1282 B(Ldar), R(17), |
1438 B(PushContext), R(1), | 1283 B(PushContext), R(13), |
1439 B(LdaUndefined), | 1284 B(LdaUndefined), |
1440 B(Star), R(8), | 1285 B(Star), R(18), |
1441 B(LdaContextSlot), R(1), U8(13), U8(0), | |
1442 B(Star), R(9), | |
1443 B(LdaImmutableCurrentContextSlot), U8(4), | 1286 B(LdaImmutableCurrentContextSlot), U8(4), |
1444 B(Star), R(10), | 1287 B(Star), R(20), |
1445 B(LdaFalse), | 1288 B(LdaFalse), |
1446 B(Star), R(11), | 1289 B(Star), R(21), |
1447 B(CallJSRuntime), U8(%promise_internal_reject), R(8), U8(4), | 1290 B(Mov), R(11), R(19), |
1448 B(LdaContextSlot), R(1), U8(13), U8(0), | 1291 B(CallJSRuntime), U8(%promise_internal_reject), R(18), U8(4), |
1449 B(PopContext), R(1), | 1292 B(PopContext), R(13), |
1450 B(Star), R(5), | |
1451 B(LdaZero), | 1293 B(LdaZero), |
1452 B(Star), R(4), | 1294 B(Star), R(14), |
| 1295 B(Mov), R(11), R(15), |
1453 B(Jump), U8(14), | 1296 B(Jump), U8(14), |
1454 B(LdaSmi), I8(-1), | 1297 B(LdaSmi), I8(-1), |
1455 B(Star), R(4), | 1298 B(Star), R(14), |
1456 B(Jump), U8(8), | 1299 B(Jump), U8(8), |
1457 B(Star), R(5), | 1300 B(Star), R(15), |
1458 B(LdaSmi), I8(1), | 1301 B(LdaSmi), I8(1), |
1459 B(Star), R(4), | 1302 B(Star), R(14), |
1460 B(LdaTheHole), | 1303 B(LdaTheHole), |
1461 B(SetPendingMessage), | 1304 B(SetPendingMessage), |
1462 B(Star), R(6), | 1305 B(Star), R(16), |
1463 B(LdaUndefined), | 1306 B(LdaUndefined), |
1464 B(Star), R(7), | 1307 B(Star), R(17), |
1465 B(LdaCurrentContextSlot), U8(13), | 1308 B(Mov), R(11), R(18), |
1466 B(Star), R(8), | 1309 B(CallJSRuntime), U8(%async_function_promise_release), R(17), U8
(2), |
1467 B(CallJSRuntime), U8(%async_function_promise_release), R(7), U8(
2), | 1310 B(Ldar), R(16), |
1468 B(Ldar), R(6), | |
1469 B(SetPendingMessage), | 1311 B(SetPendingMessage), |
1470 B(Ldar), R(4), | 1312 B(Ldar), R(14), |
1471 B(SwitchOnSmiNoFeedback), U8(13), U8(2), I8(0), | 1313 B(SwitchOnSmiNoFeedback), U8(10), U8(2), I8(0), |
1472 B(Jump), U8(8), | 1314 B(Jump), U8(8), |
1473 B(Ldar), R(5), | 1315 B(Ldar), R(15), |
1474 /* 60 S> */ B(Return), | 1316 /* 60 S> */ B(Return), |
1475 B(Ldar), R(5), | 1317 B(Ldar), R(15), |
1476 B(ReThrow), | 1318 B(ReThrow), |
1477 B(LdaUndefined), | 1319 B(LdaUndefined), |
1478 /* 60 S> */ B(Return), | 1320 /* 60 S> */ B(Return), |
1479 ] | 1321 ] |
1480 constant pool: [ | 1322 constant pool: [ |
1481 FIXED_ARRAY_TYPE, | |
1482 SYMBOL_TYPE, | 1323 SYMBOL_TYPE, |
1483 ONE_BYTE_INTERNALIZED_STRING_TYPE ["next"], | 1324 ONE_BYTE_INTERNALIZED_STRING_TYPE ["next"], |
1484 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"], | 1325 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"], |
1485 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"], | 1326 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"], |
1486 FIXED_ARRAY_TYPE, | |
1487 FIXED_ARRAY_TYPE, | |
1488 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], | 1327 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], |
1489 FIXED_ARRAY_TYPE, | 1328 FIXED_ARRAY_TYPE, |
1490 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], | 1329 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], |
1491 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], | 1330 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], |
1492 FIXED_ARRAY_TYPE, | 1331 FIXED_ARRAY_TYPE, |
1493 FIXED_ARRAY_TYPE, | 1332 FIXED_ARRAY_TYPE, |
1494 Smi [6], | 1333 Smi [6], |
1495 Smi [9], | 1334 Smi [9], |
1496 ] | 1335 ] |
1497 handlers: [ | 1336 handlers: [ |
1498 [21, 504, 510], | 1337 [21, 352, 358], |
1499 [24, 453, 455], | 1338 [24, 307, 309], |
1500 [41, 242, 248], | 1339 [30, 152, 158], |
1501 [44, 194, 196], | 1340 [33, 112, 114], |
1502 [334, 350, 352], | 1341 [218, 228, 230], |
1503 ] | 1342 ] |
1504 | 1343 |
1505 --- | 1344 --- |
1506 snippet: " | 1345 snippet: " |
1507 async function f(arr) { | 1346 async function f(arr) { |
1508 for (let x of arr) await x; | 1347 for (let x of arr) await x; |
1509 } | 1348 } |
1510 f([1, 2, 3]); | 1349 f([1, 2, 3]); |
1511 " | 1350 " |
1512 frame size: 18 | 1351 frame size: 29 |
1513 parameter count: 2 | 1352 parameter count: 2 |
1514 bytecode array length: 710 | 1353 bytecode array length: 550 |
1515 bytecodes: [ | 1354 bytecodes: [ |
1516 B(Ldar), R(new_target), | 1355 B(Ldar), R(new_target), |
1517 B(JumpIfUndefined), U8(25), | 1356 B(JumpIfUndefined), U8(25), |
1518 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_ta
rget), U8(1), | 1357 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_ta
rget), U8(1), |
1519 B(PushContext), R(4), | 1358 B(PushContext), R(15), |
1520 B(ResumeGenerator), R(new_target), | 1359 B(ResumeGenerator), R(new_target), |
1521 B(Star), R(3), | 1360 B(Star), R(14), |
1522 B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), | 1361 B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), |
1523 B(LdaSmi), I8(79), | 1362 B(LdaSmi), I8(79), |
1524 B(Star), R(5), | 1363 B(Star), R(16), |
1525 B(CallRuntime), U16(Runtime::kAbort), R(5), U8(1), | 1364 B(CallRuntime), U16(Runtime::kAbort), R(16), U8(1), |
1526 B(LdaSmi), I8(-2), | 1365 B(LdaSmi), I8(-2), |
1527 B(Star), R(3), | 1366 B(Star), R(14), |
1528 B(CreateFunctionContext), U8(11), | 1367 B(CreateFunctionContext), U8(1), |
1529 B(PushContext), R(0), | 1368 B(PushContext), R(12), |
1530 B(Ldar), R(arg0), | 1369 B(Ldar), R(arg0), |
1531 B(StaCurrentContextSlot), U8(4), | 1370 B(StaCurrentContextSlot), U8(4), |
1532 B(Mov), R(closure), R(5), | 1371 B(Mov), R(closure), R(16), |
1533 B(Mov), R(this), R(6), | 1372 B(Mov), R(this), R(17), |
1534 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(5)
, U8(2), | 1373 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(16
), U8(2), |
1535 B(StaCurrentContextSlot), U8(5), | 1374 B(Star), R(2), |
1536 /* 16 E> */ B(StackCheck), | 1375 /* 16 E> */ B(StackCheck), |
1537 B(LdaUndefined), | 1376 B(LdaUndefined), |
1538 B(Star), R(5), | 1377 B(Star), R(16), |
1539 B(CallJSRuntime), U8(%async_function_promise_create), R(5), U8(1
), | 1378 B(CallJSRuntime), U8(%async_function_promise_create), R(16), U8(
1), |
1540 B(StaCurrentContextSlot), U8(7), | 1379 B(Star), R(4), |
1541 B(Mov), R(context), R(7), | 1380 B(Mov), R(context), R(18), |
1542 B(Mov), R(context), R(8), | 1381 B(Mov), R(context), R(19), |
1543 B(Ldar), R(closure), | 1382 B(LdaZero), |
1544 B(CreateBlockContext), U8(1), | 1383 B(Star), R(8), |
1545 B(PushContext), R(1), | 1384 B(Mov), R(context), R(22), |
1546 B(LdaTheHole), | 1385 B(Mov), R(context), R(23), |
1547 B(StaCurrentContextSlot), U8(4), | 1386 /* 40 S> */ B(LdaImmutableCurrentContextSlot), U8(4), |
1548 B(LdaZero), | 1387 B(Star), R(24), |
1549 B(StaContextSlot), R(1), U8(11), U8(0), | 1388 B(LdaNamedProperty), R(24), U8(1), U8(3), |
1550 B(Mov), R(context), R(11), | 1389 B(Star), R(25), |
1551 B(Mov), R(context), R(12), | 1390 B(CallProperty0), R(25), R(24), U8(5), |
1552 /* 40 S> */ B(LdaImmutableContextSlot), R(1), U8(4), U8(0), | |
1553 B(Star), R(13), | |
1554 B(LdaNamedProperty), R(13), U8(2), U8(3), | |
1555 B(Star), R(14), | |
1556 B(CallProperty0), R(14), R(13), U8(5), | |
1557 B(JumpIfJSReceiver), U8(7), | 1391 B(JumpIfJSReceiver), U8(7), |
1558 B(CallRuntime), U16(Runtime::kThrowSymbolIteratorInvalid), R(0),
U8(0), | 1392 B(CallRuntime), U16(Runtime::kThrowSymbolIteratorInvalid), R(0),
U8(0), |
1559 /* 40 E> */ B(StaContextSlot), R(1), U8(9), U8(0), | 1393 B(Star), R(6), |
1560 B(Ldar), R(3), | 1394 B(Ldar), R(14), |
1561 B(SwitchOnSmiNoFeedback), U8(3), U8(1), I8(0), | 1395 B(SwitchOnSmiNoFeedback), U8(2), U8(1), I8(0), |
1562 B(LdaSmi), I8(-2), | 1396 B(LdaSmi), I8(-2), |
1563 B(TestEqualStrictNoFeedback), R(3), | 1397 /* 40 E> */ B(TestEqualStrictNoFeedback), R(14), |
1564 B(JumpIfTrue), U8(11), | 1398 B(JumpIfTrue), U8(11), |
1565 B(LdaSmi), I8(79), | 1399 B(LdaSmi), I8(79), |
1566 B(Star), R(13), | 1400 B(Star), R(24), |
1567 B(CallRuntime), U16(Runtime::kAbort), R(13), U8(1), | 1401 B(CallRuntime), U16(Runtime::kAbort), R(24), U8(1), |
1568 /* 35 S> */ B(LdaContextSlot), R(1), U8(9), U8(0), | 1402 /* 35 S> */ B(LdaNamedProperty), R(6), U8(3), U8(9), |
1569 B(Star), R(14), | 1403 B(Star), R(24), |
1570 B(LdaNamedProperty), R(14), U8(4), U8(9), | 1404 B(CallProperty0), R(24), R(6), U8(7), |
1571 B(Star), R(13), | 1405 B(Star), R(7), |
1572 B(CallProperty0), R(13), R(14), U8(7), | 1406 /* 35 E> */ B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(7), U8(1), |
1573 /* 35 E> */ B(StaContextSlot), R(1), U8(10), U8(0), | |
1574 B(Star), R(13), | |
1575 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(13), U8(1), | |
1576 B(ToBooleanLogicalNot), | 1407 B(ToBooleanLogicalNot), |
1577 B(JumpIfFalse), U8(13), | 1408 B(JumpIfFalse), U8(7), |
1578 B(LdaContextSlot), R(1), U8(10), U8(0), | 1409 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(7), U8(1), |
1579 B(Star), R(13), | 1410 B(LdaNamedProperty), R(7), U8(4), U8(11), |
1580 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(13), U8(1), | 1411 B(JumpIfToBooleanTrue), U8(105), |
1581 B(LdaContextSlot), R(1), U8(10), U8(0), | 1412 B(LdaNamedProperty), R(7), U8(5), U8(13), |
1582 B(Star), R(13), | 1413 B(Star), R(9), |
1583 B(LdaNamedProperty), R(13), U8(5), U8(11), | |
1584 B(JumpIfToBooleanTrue), U8(155), | |
1585 B(LdaContextSlot), R(1), U8(10), U8(0), | |
1586 B(Star), R(13), | |
1587 B(LdaNamedProperty), R(13), U8(6), U8(13), | |
1588 B(StaContextSlot), R(1), U8(12), U8(0), | |
1589 B(LdaSmi), I8(2), | 1414 B(LdaSmi), I8(2), |
1590 B(StaContextSlot), R(1), U8(11), U8(0), | 1415 B(Star), R(8), |
1591 B(LdaContextSlot), R(1), U8(12), U8(0), | 1416 B(Mov), R(9), R(5), |
1592 B(StaContextSlot), R(1), U8(8), U8(0), | |
1593 /* 26 E> */ B(StackCheck), | 1417 /* 26 E> */ B(StackCheck), |
1594 B(Ldar), R(closure), | 1418 B(Mov), R(5), R(0), |
1595 B(CreateBlockContext), U8(7), | 1419 /* 45 S> */ B(Nop), |
1596 B(PushContext), R(2), | 1420 /* 51 S> */ B(Mov), R(5), R(3), |
1597 B(LdaTheHole), | |
1598 B(StaCurrentContextSlot), U8(4), | |
1599 B(LdaContextSlot), R(1), U8(8), U8(0), | |
1600 B(StaCurrentContextSlot), U8(4), | |
1601 /* 45 S> */ B(LdaImmutableContextSlot), R(1), U8(5), U8(0), | |
1602 B(Star), R(13), | |
1603 /* 51 S> */ B(LdaImmutableCurrentContextSlot), U8(4), | |
1604 B(StaContextSlot), R(1), U8(6), U8(0), | |
1605 /* 45 S> */ B(LdaUndefined), | 1421 /* 45 S> */ B(LdaUndefined), |
1606 B(Star), R(14), | 1422 B(Star), R(25), |
1607 B(LdaImmutableContextSlot), R(1), U8(5), U8(0), | 1423 B(Mov), R(2), R(26), |
1608 B(Star), R(15), | 1424 B(Mov), R(5), R(27), |
1609 B(LdaContextSlot), R(1), U8(6), U8(0), | 1425 B(Mov), R(4), R(28), |
1610 B(Star), R(16), | 1426 B(CallJSRuntime), U8(%async_function_await_uncaught), R(25), U8(
4), |
1611 B(LdaContextSlot), R(1), U8(7), U8(0), | 1427 B(LdaZero), |
1612 B(Star), R(17), | 1428 B(Mov), R(2), R(24), |
1613 B(CallJSRuntime), U8(%async_function_await_uncaught), R(14), U8(
4), | 1429 B(Mov), R(4), R(25), |
1614 B(LdaContextSlot), R(1), U8(7), U8(0), | 1430 B(SuspendGenerator), R(24), U8(2), |
1615 B(Star), R(14), | 1431 B(Ldar), R(25), |
1616 B(LdaZero), | |
1617 B(SuspendGenerator), R(13), U8(2), | |
1618 B(Ldar), R(14), | |
1619 /* 54 S> */ B(Return), | 1432 /* 54 S> */ B(Return), |
1620 B(LdaSmi), I8(-2), | 1433 B(LdaSmi), I8(-2), |
1621 B(Star), R(3), | |
1622 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(13), U8(1), | |
1623 B(Star), R(14), | 1434 B(Star), R(14), |
1624 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(13)
, U8(1), | 1435 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(24), U8(1), |
1625 B(Star), R(15), | 1436 B(Star), R(25), |
1626 B(LdaZero), | 1437 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(24)
, U8(1), |
1627 B(TestEqualStrictNoFeedback), R(15), | 1438 B(Star), R(26), |
1628 B(JumpIfTrue), U8(30), | 1439 B(LdaZero), |
| 1440 B(TestEqualStrictNoFeedback), R(26), |
| 1441 B(JumpIfTrue), U8(28), |
1629 B(LdaSmi), I8(2), | 1442 B(LdaSmi), I8(2), |
1630 B(TestEqualStrictNoFeedback), R(15), | 1443 B(TestEqualStrictNoFeedback), R(26), |
1631 B(JumpIfTrue), U8(21), | 1444 B(JumpIfTrue), U8(19), |
1632 B(LdaTrue), | 1445 B(LdaTrue), |
1633 B(Star), R(17), | 1446 B(Star), R(28), |
1634 B(Mov), R(14), R(16), | 1447 B(Mov), R(25), R(27), |
1635 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(16)
, U8(2), | 1448 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(27)
, U8(2), |
1636 B(PopContext), R(2), | 1449 B(Star), R(21), |
| 1450 B(LdaZero), |
| 1451 B(Star), R(20), |
| 1452 B(Jump), U8(63), |
| 1453 B(Ldar), R(25), |
| 1454 B(ReThrow), |
| 1455 B(LdaZero), |
| 1456 B(Star), R(8), |
| 1457 B(JumpLoop), U8(151), I8(0), |
| 1458 B(Jump), U8(40), |
| 1459 B(Star), R(24), |
| 1460 B(Ldar), R(closure), |
| 1461 B(CreateCatchContext), R(24), U8(6), U8(7), |
| 1462 B(Star), R(23), |
| 1463 B(LdaTheHole), |
| 1464 B(SetPendingMessage), |
| 1465 B(Ldar), R(23), |
| 1466 B(PushContext), R(13), |
| 1467 B(LdaSmi), I8(2), |
| 1468 B(TestEqualStrict), R(8), U8(15), |
| 1469 B(JumpIfFalse), U8(6), |
| 1470 B(LdaSmi), I8(1), |
| 1471 B(Star), R(8), |
| 1472 B(LdaImmutableCurrentContextSlot), U8(4), |
| 1473 B(Star), R(24), |
| 1474 B(CallRuntime), U16(Runtime::kReThrow), R(24), U8(1), |
| 1475 B(PopContext), R(13), |
| 1476 B(LdaSmi), I8(-1), |
| 1477 B(Star), R(20), |
| 1478 B(Jump), U8(8), |
| 1479 B(Star), R(21), |
| 1480 B(LdaSmi), I8(1), |
| 1481 B(Star), R(20), |
| 1482 B(LdaTheHole), |
| 1483 B(SetPendingMessage), |
| 1484 B(Star), R(22), |
| 1485 B(LdaZero), |
| 1486 B(TestEqualStrict), R(8), U8(16), |
| 1487 B(JumpIfTrue), U8(104), |
| 1488 B(LdaNamedProperty), R(6), U8(8), U8(17), |
1637 B(Star), R(10), | 1489 B(Star), R(10), |
1638 B(LdaZero), | |
1639 B(Star), R(9), | |
1640 B(Jump), U8(75), | |
1641 B(Ldar), R(14), | |
1642 B(ReThrow), | |
1643 B(PopContext), R(2), | |
1644 B(LdaZero), | |
1645 B(StaContextSlot), R(1), U8(11), U8(0), | |
1646 B(JumpLoop), U8(223), I8(0), | |
1647 B(Jump), U8(48), | |
1648 B(Star), R(13), | |
1649 B(Ldar), R(closure), | |
1650 B(CreateCatchContext), R(13), U8(8), U8(9), | |
1651 B(Star), R(12), | |
1652 B(LdaTheHole), | |
1653 B(SetPendingMessage), | |
1654 B(Ldar), R(12), | |
1655 B(PushContext), R(2), | |
1656 B(LdaContextSlot), R(1), U8(11), U8(0), | |
1657 B(Star), R(13), | |
1658 B(LdaSmi), I8(2), | |
1659 B(TestEqualStrict), R(13), U8(15), | |
1660 B(JumpIfFalse), U8(8), | |
1661 B(LdaSmi), I8(1), | |
1662 B(StaContextSlot), R(1), U8(11), U8(0), | |
1663 B(LdaImmutableCurrentContextSlot), U8(4), | |
1664 B(Star), R(13), | |
1665 B(CallRuntime), U16(Runtime::kReThrow), R(13), U8(1), | |
1666 B(PopContext), R(2), | |
1667 B(LdaSmi), I8(-1), | |
1668 B(Star), R(9), | |
1669 B(Jump), U8(8), | |
1670 B(Star), R(10), | |
1671 B(LdaSmi), I8(1), | |
1672 B(Star), R(9), | |
1673 B(LdaTheHole), | |
1674 B(SetPendingMessage), | |
1675 B(Star), R(11), | |
1676 B(LdaContextSlot), R(1), U8(11), U8(0), | |
1677 B(Star), R(12), | |
1678 B(LdaZero), | |
1679 B(TestEqualStrict), R(12), U8(16), | |
1680 B(JumpIfTrue), U8(150), | |
1681 B(LdaContextSlot), R(1), U8(9), U8(0), | |
1682 B(Star), R(12), | |
1683 B(LdaNamedProperty), R(12), U8(10), U8(17), | |
1684 B(StaContextSlot), R(1), U8(13), U8(0), | |
1685 B(LdaContextSlot), R(1), U8(13), U8(0), | |
1686 B(TestUndetectable), | 1490 B(TestUndetectable), |
1687 B(JumpIfFalse), U8(4), | 1491 B(JumpIfFalse), U8(4), |
1688 B(Jump), U8(127), | 1492 B(Jump), U8(93), |
1689 B(LdaContextSlot), R(1), U8(11), U8(0), | 1493 B(LdaSmi), I8(1), |
1690 B(Star), R(12), | 1494 B(TestEqualStrict), R(8), U8(20), |
1691 B(LdaSmi), I8(1), | 1495 B(JumpIfFalse), U8(61), |
1692 B(TestEqualStrict), R(12), U8(20), | 1496 B(Ldar), R(10), |
1693 B(JumpIfFalse), U8(69), | |
1694 B(LdaContextSlot), R(1), U8(13), U8(0), | |
1695 B(TestTypeOf), U8(5), | 1497 B(TestTypeOf), U8(5), |
1696 B(JumpIfFalse), U8(4), | 1498 B(JumpIfFalse), U8(4), |
1697 B(Jump), U8(18), | 1499 B(Jump), U8(18), |
1698 B(Wide), B(LdaSmi), I16(130), | 1500 B(Wide), B(LdaSmi), I16(130), |
1699 B(Star), R(12), | 1501 B(Star), R(23), |
1700 B(LdaConstant), U8(11), | 1502 B(LdaConstant), U8(9), |
1701 B(Star), R(13), | 1503 B(Star), R(24), |
1702 B(CallRuntime), U16(Runtime::kNewTypeError), R(12), U8(2), | 1504 B(CallRuntime), U16(Runtime::kNewTypeError), R(23), U8(2), |
1703 B(Throw), | 1505 B(Throw), |
1704 B(Mov), R(context), R(12), | 1506 B(Mov), R(context), R(23), |
1705 B(LdaContextSlot), R(1), U8(13), U8(0), | 1507 B(Mov), R(10), R(24), |
1706 B(Star), R(13), | 1508 B(Mov), R(6), R(25), |
1707 B(LdaContextSlot), R(1), U8(9), U8(0), | 1509 B(InvokeIntrinsic), U8(Runtime::k_Call), R(24), U8(2), |
1708 B(Star), R(14), | |
1709 B(InvokeIntrinsic), U8(Runtime::k_Call), R(13), U8(2), | |
1710 B(Jump), U8(20), | 1510 B(Jump), U8(20), |
1711 B(Star), R(13), | 1511 B(Star), R(24), |
1712 B(Ldar), R(closure), | 1512 B(Ldar), R(closure), |
1713 B(CreateCatchContext), R(13), U8(8), U8(12), | 1513 B(CreateCatchContext), R(24), U8(6), U8(10), |
1714 B(Star), R(12), | 1514 B(Star), R(23), |
1715 B(LdaTheHole), | 1515 B(LdaTheHole), |
1716 B(SetPendingMessage), | 1516 B(SetPendingMessage), |
1717 B(Ldar), R(12), | 1517 B(Ldar), R(23), |
1718 B(PushContext), R(2), | 1518 B(PushContext), R(13), |
1719 B(PopContext), R(2), | 1519 B(PopContext), R(13), |
1720 B(Jump), U8(47), | 1520 B(Jump), U8(27), |
1721 B(LdaContextSlot), R(1), U8(13), U8(0), | 1521 B(Mov), R(10), R(23), |
1722 B(Star), R(12), | 1522 B(Mov), R(6), R(24), |
1723 B(LdaContextSlot), R(1), U8(9), U8(0), | 1523 B(InvokeIntrinsic), U8(Runtime::k_Call), R(23), U8(2), |
1724 B(Star), R(13), | 1524 B(Star), R(11), |
1725 B(InvokeIntrinsic), U8(Runtime::k_Call), R(12), U8(2), | 1525 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(11), U8(1), |
1726 B(StaContextSlot), R(1), U8(14), U8(0), | |
1727 B(LdaContextSlot), R(1), U8(14), U8(0), | |
1728 B(Star), R(12), | |
1729 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(12), U8(1), | |
1730 B(JumpIfToBooleanFalse), U8(4), | 1526 B(JumpIfToBooleanFalse), U8(4), |
| 1527 B(Jump), U8(7), |
| 1528 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(11), U8(1), |
| 1529 B(Ldar), R(22), |
| 1530 B(SetPendingMessage), |
| 1531 B(Ldar), R(20), |
| 1532 B(SwitchOnSmiNoFeedback), U8(11), U8(2), I8(0), |
1731 B(Jump), U8(13), | 1533 B(Jump), U8(13), |
1732 B(LdaContextSlot), R(1), U8(14), U8(0), | 1534 B(LdaZero), |
1733 B(Star), R(12), | 1535 B(Star), R(16), |
1734 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(12), U8(1), | 1536 B(Mov), R(21), R(17), |
1735 B(Ldar), R(11), | 1537 B(Jump), U8(83), |
1736 B(SetPendingMessage), | 1538 B(Ldar), R(21), |
1737 B(Ldar), R(9), | |
1738 B(SwitchOnSmiNoFeedback), U8(13), U8(2), I8(0), | |
1739 B(Jump), U8(15), | |
1740 B(PopContext), R(1), | |
1741 B(LdaZero), | |
1742 B(Star), R(5), | |
1743 B(Mov), R(10), R(6), | |
1744 B(Jump), U8(93), | |
1745 B(Ldar), R(10), | |
1746 B(ReThrow), | 1539 B(ReThrow), |
1747 B(PopContext), R(1), | 1540 B(LdaUndefined), |
1748 B(LdaUndefined), | 1541 B(Star), R(20), |
1749 B(Star), R(9), | 1542 B(LdaUndefined), |
1750 B(LdaCurrentContextSlot), U8(7), | 1543 B(Star), R(22), |
1751 B(Star), R(10), | 1544 B(Mov), R(4), R(21), |
1752 B(LdaUndefined), | 1545 B(CallJSRuntime), U8(%promise_resolve), R(20), U8(3), |
1753 B(Star), R(11), | 1546 B(LdaZero), |
1754 B(CallJSRuntime), U8(%promise_resolve), R(9), U8(3), | 1547 B(Star), R(16), |
1755 B(LdaCurrentContextSlot), U8(7), | 1548 B(Mov), R(4), R(17), |
1756 B(Star), R(6), | 1549 B(Jump), U8(59), |
1757 B(LdaZero), | 1550 B(Jump), U8(45), |
1758 B(Star), R(5), | 1551 B(Star), R(20), |
1759 B(Jump), U8(65), | |
1760 B(Jump), U8(51), | |
1761 B(Star), R(9), | |
1762 B(Ldar), R(closure), | 1552 B(Ldar), R(closure), |
1763 B(CreateCatchContext), R(9), U8(8), U8(15), | 1553 B(CreateCatchContext), R(20), U8(6), U8(13), |
1764 B(Star), R(8), | 1554 B(Star), R(19), |
1765 B(LdaTheHole), | 1555 B(LdaTheHole), |
1766 B(SetPendingMessage), | 1556 B(SetPendingMessage), |
1767 B(Ldar), R(8), | 1557 B(Ldar), R(19), |
1768 B(PushContext), R(1), | 1558 B(PushContext), R(13), |
1769 B(LdaUndefined), | 1559 B(LdaUndefined), |
1770 B(Star), R(9), | 1560 B(Star), R(20), |
1771 B(LdaContextSlot), R(1), U8(7), U8(0), | |
1772 B(Star), R(10), | |
1773 B(LdaImmutableCurrentContextSlot), U8(4), | 1561 B(LdaImmutableCurrentContextSlot), U8(4), |
1774 B(Star), R(11), | 1562 B(Star), R(22), |
1775 B(LdaFalse), | 1563 B(LdaFalse), |
1776 B(Star), R(12), | 1564 B(Star), R(23), |
1777 B(CallJSRuntime), U8(%promise_internal_reject), R(9), U8(4), | 1565 B(Mov), R(4), R(21), |
1778 B(LdaContextSlot), R(1), U8(7), U8(0), | 1566 B(CallJSRuntime), U8(%promise_internal_reject), R(20), U8(4), |
1779 B(PopContext), R(1), | 1567 B(PopContext), R(13), |
1780 B(Star), R(6), | 1568 B(LdaZero), |
1781 B(LdaZero), | 1569 B(Star), R(16), |
1782 B(Star), R(5), | 1570 B(Mov), R(4), R(17), |
1783 B(Jump), U8(14), | 1571 B(Jump), U8(14), |
1784 B(LdaSmi), I8(-1), | 1572 B(LdaSmi), I8(-1), |
1785 B(Star), R(5), | 1573 B(Star), R(16), |
1786 B(Jump), U8(8), | 1574 B(Jump), U8(8), |
1787 B(Star), R(6), | 1575 B(Star), R(17), |
1788 B(LdaSmi), I8(1), | 1576 B(LdaSmi), I8(1), |
1789 B(Star), R(5), | 1577 B(Star), R(16), |
1790 B(LdaTheHole), | 1578 B(LdaTheHole), |
1791 B(SetPendingMessage), | 1579 B(SetPendingMessage), |
1792 B(Star), R(7), | 1580 B(Star), R(18), |
1793 B(LdaUndefined), | 1581 B(LdaUndefined), |
1794 B(Star), R(8), | 1582 B(Star), R(19), |
1795 B(LdaCurrentContextSlot), U8(7), | 1583 B(Mov), R(4), R(20), |
1796 B(Star), R(9), | 1584 B(CallJSRuntime), U8(%async_function_promise_release), R(19), U8
(2), |
1797 B(CallJSRuntime), U8(%async_function_promise_release), R(8), U8(
2), | 1585 B(Ldar), R(18), |
1798 B(Ldar), R(7), | 1586 B(SetPendingMessage), |
1799 B(SetPendingMessage), | 1587 B(Ldar), R(16), |
1800 B(Ldar), R(5), | 1588 B(SwitchOnSmiNoFeedback), U8(14), U8(2), I8(0), |
1801 B(SwitchOnSmiNoFeedback), U8(16), U8(2), I8(0), | |
1802 B(Jump), U8(8), | 1589 B(Jump), U8(8), |
1803 B(Ldar), R(6), | 1590 B(Ldar), R(17), |
1804 /* 54 S> */ B(Return), | 1591 /* 54 S> */ B(Return), |
1805 B(Ldar), R(6), | 1592 B(Ldar), R(17), |
1806 B(ReThrow), | 1593 B(ReThrow), |
1807 B(LdaUndefined), | 1594 B(LdaUndefined), |
1808 /* 54 S> */ B(Return), | 1595 /* 54 S> */ B(Return), |
1809 ] | 1596 ] |
1810 constant pool: [ | 1597 constant pool: [ |
1811 Smi [100], | 1598 Smi [85], |
1812 FIXED_ARRAY_TYPE, | |
1813 SYMBOL_TYPE, | 1599 SYMBOL_TYPE, |
1814 Smi [165], | 1600 Smi [99], |
1815 ONE_BYTE_INTERNALIZED_STRING_TYPE ["next"], | 1601 ONE_BYTE_INTERNALIZED_STRING_TYPE ["next"], |
1816 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"], | 1602 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"], |
1817 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"], | 1603 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"], |
1818 FIXED_ARRAY_TYPE, | |
1819 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], | 1604 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], |
1820 FIXED_ARRAY_TYPE, | 1605 FIXED_ARRAY_TYPE, |
1821 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], | 1606 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], |
1822 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], | 1607 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], |
1823 FIXED_ARRAY_TYPE, | 1608 FIXED_ARRAY_TYPE, |
1824 Smi [6], | 1609 Smi [6], |
1825 Smi [16], | 1610 Smi [14], |
1826 FIXED_ARRAY_TYPE, | 1611 FIXED_ARRAY_TYPE, |
1827 Smi [6], | 1612 Smi [6], |
1828 Smi [9], | 1613 Smi [9], |
1829 ] | 1614 ] |
1830 handlers: [ | 1615 handlers: [ |
1831 [64, 664, 670], | 1616 [64, 505, 511], |
1832 [67, 613, 615], | 1617 [67, 460, 462], |
1833 [84, 388, 394], | 1618 [73, 293, 299], |
1834 [87, 340, 342], | 1619 [76, 253, 255], |
1835 [481, 497, 499], | 1620 [360, 370, 372], |
1836 ] | 1621 ] |
1837 | 1622 |
OLD | NEW |