chore: Remove set_value_from_id and resolve in the DataFlowGraph#2498
Closed
chore: Remove set_value_from_id and resolve in the DataFlowGraph#2498
set_value_from_id and resolve in the DataFlowGraph#2498Conversation
Contributor
Author
|
This would require reworks to several passes that are too large to be practical currently. |
5 tasks
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Problem*
Resolves (none)
Summary*
This is another experimental change in the SSA IR. This one is aimed at reducing the surface for bugs by removing
DataFlowGraph::set_value_from_idand subsequently the need to callDataFlowGraph::resolvefor each value as well. This has historically been a source of bugs when one forgets to call resolve. Now that the mem2reg no longer relies onset_value_from_id, the only passes that still use it are cfg simplification which just needed a small change, and defunctionalization which still needs a larger change.Documentation
This PR requires documentation updates when merged.
Additional Context
PR Checklist*
cargo fmton default settings.