forked from dotnet/runtime
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Improvements for dead store removal. (dotnet#38004)
1. Don't mark fields of dependently promoted structs as untracked. 2. Remove some stores whose lhs local has a ref count of 1 when running late liveness. We can rely on ref counts since they are calculated right before the late liveness pass. 3. Remove dead GT_STORE_BLK in addition to GT_STOREIND in the late liveness pass. 4. Remove dead stores to untracked locals in the late liveness pass. 5. Allow optRemoveRedundantZeroInits to remove some redundant initializations of tracked locals. Move the phase to right after liveness so that SSA is correct after removing assignments to tracked locals.
- Loading branch information
1 parent
5988e9c
commit 5e153a2
Showing
5 changed files
with
162 additions
and
71 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters