Commit 05bec97
committed
[FSPrunedLiveness] Add extendToNonUse.
And use it in lifetime maximization.
The preexisting member function updateForUse has been updated to match
PrunedLiveness and gravitate towards lifetimeEnding=false.
For a fixed instruction and bit, if called with lifetimeEnding=true and
then lifetimeEnding=false, the lifetime-ending-ness of the instruction
at the bit will be false; and if it is again called with
lifetimeEnding=true, the lifetime-ending-ness of the instruction at the
bit will remain false.
In contrast the new member function extendToUse does not alter the
lifetime-ending-ness if it is already set. If it is unset, the function
sets the bit to lifetimeEnding=false.1 parent c1716c9 commit 05bec97
File tree
5 files changed
+401
-29
lines changed- include/swift/SIL
- lib
- SILOptimizer/Mandatory
- SIL/Utils
- test/SILOptimizer
5 files changed
+401
-29
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
375 | 375 | | |
376 | 376 | | |
377 | 377 | | |
378 | | - | |
379 | | - | |
380 | | - | |
| 378 | + | |
| 379 | + | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
381 | 384 | | |
382 | 385 | | |
383 | 386 | | |
| |||
694 | 697 | | |
695 | 698 | | |
696 | 699 | | |
| 700 | + | |
| 701 | + | |
| 702 | + | |
| 703 | + | |
| 704 | + | |
| 705 | + | |
| 706 | + | |
| 707 | + | |
| 708 | + | |
697 | 709 | | |
698 | 710 | | |
699 | 711 | | |
| |||
708 | 720 | | |
709 | 721 | | |
710 | 722 | | |
711 | | - | |
712 | | - | |
713 | | - | |
714 | | - | |
| 723 | + | |
| 724 | + | |
| 725 | + | |
715 | 726 | | |
716 | 727 | | |
717 | 728 | | |
718 | 729 | | |
719 | | - | |
720 | 730 | | |
721 | | - | |
| 731 | + | |
| 732 | + | |
| 733 | + | |
722 | 734 | | |
| 735 | + | |
| 736 | + | |
| 737 | + | |
| 738 | + | |
| 739 | + | |
| 740 | + | |
| 741 | + | |
| 742 | + | |
| 743 | + | |
| 744 | + | |
| 745 | + | |
| 746 | + | |
| 747 | + | |
| 748 | + | |
| 749 | + | |
723 | 750 | | |
724 | 751 | | |
725 | 752 | | |
| |||
755 | 782 | | |
756 | 783 | | |
757 | 784 | | |
758 | | - | |
| 785 | + | |
| 786 | + | |
| 787 | + | |
759 | 788 | | |
760 | | - | |
761 | | - | |
| 789 | + | |
| 790 | + | |
| 791 | + | |
| 792 | + | |
| 793 | + | |
| 794 | + | |
| 795 | + | |
| 796 | + | |
762 | 797 | | |
763 | 798 | | |
764 | 799 | | |
| |||
875 | 910 | | |
876 | 911 | | |
877 | 912 | | |
| 913 | + | |
| 914 | + | |
| 915 | + | |
| 916 | + | |
| 917 | + | |
| 918 | + | |
| 919 | + | |
| 920 | + | |
| 921 | + | |
| 922 | + | |
878 | 923 | | |
879 | 924 | | |
880 | 925 | | |
| |||
943 | 988 | | |
944 | 989 | | |
945 | 990 | | |
946 | | - | |
| 991 | + | |
947 | 992 | | |
948 | 993 | | |
949 | 994 | | |
| |||
971 | 1016 | | |
972 | 1017 | | |
973 | 1018 | | |
| 1019 | + | |
| 1020 | + | |
| 1021 | + | |
| 1022 | + | |
| 1023 | + | |
| 1024 | + | |
| 1025 | + | |
| 1026 | + | |
974 | 1027 | | |
975 | 1028 | | |
976 | 1029 | | |
| |||
1089 | 1142 | | |
1090 | 1143 | | |
1091 | 1144 | | |
| 1145 | + | |
| 1146 | + | |
| 1147 | + | |
| 1148 | + | |
| 1149 | + | |
| 1150 | + | |
| 1151 | + | |
| 1152 | + | |
1092 | 1153 | | |
1093 | 1154 | | |
1094 | 1155 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
663 | 663 | | |
664 | 664 | | |
665 | 665 | | |
| 666 | + | |
| 667 | + | |
| 668 | + | |
| 669 | + | |
| 670 | + | |
| 671 | + | |
| 672 | + | |
| 673 | + | |
| 674 | + | |
| 675 | + | |
| 676 | + | |
| 677 | + | |
| 678 | + | |
| 679 | + | |
| 680 | + | |
| 681 | + | |
| 682 | + | |
| 683 | + | |
| 684 | + | |
| 685 | + | |
| 686 | + | |
| 687 | + | |
| 688 | + | |
| 689 | + | |
| 690 | + | |
| 691 | + | |
| 692 | + | |
| 693 | + | |
| 694 | + | |
| 695 | + | |
| 696 | + | |
| 697 | + | |
| 698 | + | |
| 699 | + | |
| 700 | + | |
| 701 | + | |
| 702 | + | |
| 703 | + | |
| 704 | + | |
| 705 | + | |
| 706 | + | |
| 707 | + | |
| 708 | + | |
| 709 | + | |
| 710 | + | |
| 711 | + | |
| 712 | + | |
| 713 | + | |
| 714 | + | |
| 715 | + | |
| 716 | + | |
| 717 | + | |
| 718 | + | |
| 719 | + | |
| 720 | + | |
| 721 | + | |
| 722 | + | |
| 723 | + | |
| 724 | + | |
| 725 | + | |
| 726 | + | |
| 727 | + | |
| 728 | + | |
| 729 | + | |
| 730 | + | |
| 731 | + | |
| 732 | + | |
| 733 | + | |
| 734 | + | |
| 735 | + | |
| 736 | + | |
| 737 | + | |
| 738 | + | |
| 739 | + | |
| 740 | + | |
| 741 | + | |
| 742 | + | |
| 743 | + | |
| 744 | + | |
| 745 | + | |
| 746 | + | |
| 747 | + | |
| 748 | + | |
| 749 | + | |
| 750 | + | |
| 751 | + | |
| 752 | + | |
| 753 | + | |
| 754 | + | |
| 755 | + | |
| 756 | + | |
| 757 | + | |
| 758 | + | |
| 759 | + | |
| 760 | + | |
| 761 | + | |
| 762 | + | |
| 763 | + | |
| 764 | + | |
| 765 | + | |
| 766 | + | |
| 767 | + | |
| 768 | + | |
| 769 | + | |
| 770 | + | |
| 771 | + | |
| 772 | + | |
| 773 | + | |
666 | 774 | | |
667 | 775 | | |
668 | 776 | | |
| |||
967 | 1075 | | |
968 | 1076 | | |
969 | 1077 | | |
| 1078 | + | |
| 1079 | + | |
| 1080 | + | |
| 1081 | + | |
| 1082 | + | |
| 1083 | + | |
| 1084 | + | |
| 1085 | + | |
| 1086 | + | |
| 1087 | + | |
| 1088 | + | |
| 1089 | + | |
| 1090 | + | |
| 1091 | + | |
| 1092 | + | |
| 1093 | + | |
970 | 1094 | | |
971 | 1095 | | |
972 | 1096 | | |
| |||
Lines changed: 8 additions & 15 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1433 | 1433 | | |
1434 | 1434 | | |
1435 | 1435 | | |
1436 | | - | |
1437 | | - | |
| 1436 | + | |
1438 | 1437 | | |
1439 | 1438 | | |
1440 | 1439 | | |
| |||
3361 | 3360 | | |
3362 | 3361 | | |
3363 | 3362 | | |
3364 | | - | |
3365 | | - | |
| 3363 | + | |
3366 | 3364 | | |
3367 | 3365 | | |
3368 | 3366 | | |
| |||
3373 | 3371 | | |
3374 | 3372 | | |
3375 | 3373 | | |
3376 | | - | |
3377 | | - | |
| 3374 | + | |
3378 | 3375 | | |
3379 | 3376 | | |
3380 | 3377 | | |
| |||
3462 | 3459 | | |
3463 | 3460 | | |
3464 | 3461 | | |
3465 | | - | |
| 3462 | + | |
3466 | 3463 | | |
3467 | | - | |
3468 | | - | |
3469 | | - | |
3470 | | - | |
3471 | | - | |
3472 | | - | |
3473 | | - | |
3474 | | - | |
| 3464 | + | |
| 3465 | + | |
| 3466 | + | |
| 3467 | + | |
3475 | 3468 | | |
3476 | 3469 | | |
3477 | 3470 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
18 | | - | |
| 18 | + | |
| 19 | + | |
19 | 20 | | |
20 | 21 | | |
21 | 22 | | |
| |||
0 commit comments