-
Notifications
You must be signed in to change notification settings - Fork 39
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
injectdestructors: remove obsolete processing (#956)
## Summary Remove the moving of `def`s from the destructor injection pass. It is obsolete now that unscoped `def`s are properly handled during the MIR -> `CgNode` translation. ## Details Moving the `def`s was necessary back when their semantics weren't as fleshed out, but with the behaviour of a `def` statements now being clearer, and `cgirgen` properly translating them, this step is unnecessary. Not moving the `def` during destructor injection also improves the final generated code, as the regions previously used for turning a `def` statement into an assignment often assigned the input value to an, in this case, unnecessary temporary first.
- Loading branch information
Showing
4 changed files
with
30 additions
and
70 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