-
Notifications
You must be signed in to change notification settings - Fork 12.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add a Use-Definition Chain implementation for the MIR. #62547
Closed
Closed
Commits on Aug 8, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 905818f - Browse repository at this point
Copy the full SHA 905818fView commit details -
Use new
Place::base_direct
API when possibleIts functionality is duplicated in `borrowed_locals.rs` and `path_utils.rs`
Configuration menu - View commit details
-
Copy full SHA for 0764641 - Browse repository at this point
Copy the full SHA 0764641View commit details -
Link lifetime of closure param to that of
self
inPlace::iterate
This informs callers that the lifetime of the reference to the underlying `PlaceBase` is the same as that of the `Place` being iterated over. This lets callers return a reference to the underlying `PlaceBase` from the closure passed to `Place::iterate`.
Configuration menu - View commit details
-
Copy full SHA for 6359de1 - Browse repository at this point
Copy the full SHA 6359de1View commit details -
Configuration menu - View commit details
-
Copy full SHA for dcc4b9f - Browse repository at this point
Copy the full SHA dcc4b9fView commit details -
We now use `dataflow::state_for_location` to get the dataflow state before calls to `rustc_peek`. The original version used a custom implementation that only looked at assignment statements.
Configuration menu - View commit details
-
Copy full SHA for dee972a - Browse repository at this point
Copy the full SHA dee972aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3594ff1 - Browse repository at this point
Copy the full SHA 3594ff1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9d14411 - Browse repository at this point
Copy the full SHA 9d14411View commit details -
Configuration menu - View commit details
-
Copy full SHA for 53fa5a4 - Browse repository at this point
Copy the full SHA 53fa5a4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 65c8fda - Browse repository at this point
Copy the full SHA 65c8fdaView commit details -
Configuration menu - View commit details
-
Copy full SHA for bdaa90a - Browse repository at this point
Copy the full SHA bdaa90aView commit details -
Configuration menu - View commit details
-
Copy full SHA for cfd9320 - Browse repository at this point
Copy the full SHA cfd9320View commit details -
Correctly determine which terminators can have side effects
The previous code ignored that `Drop` terminators could execute custom `Drop` implementations which might mutate the environment. Now we correctly implement `has_side_effects` and tests that custom `Drop` impls are recorded as an indirect definition.
Configuration menu - View commit details
-
Copy full SHA for 047e7ca - Browse repository at this point
Copy the full SHA 047e7caView commit details -
Record the fact that
rustc_peek
has no side effectsThis means that calls to `rustc_peek` are no longer indirect definitions of any locals in the body. Other pure intrinsics (e.g. `transmute`) could also be added to the list of exceptions.
Configuration menu - View commit details
-
Copy full SHA for 976ba13 - Browse repository at this point
Copy the full SHA 976ba13View commit details
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.