Conversation
This comment has been minimized.
This comment has been minimized.
|
some style nits and CI is unhappy with the |
|
@bors r+ |
|
📌 Commit d9ddb64 has been approved by |
|
☀️ Test successful - checks-actions |
|
Finished benchmarking commit (6eda764): comparison url. Summary:
If you disagree with this performance assessment, please file an issue in rust-lang/rustc-perf. @rustbot label: -perf-regression Footnotes |
| } | ||
|
|
||
| /// Determines whether or not this LocalDecl is temp, if not it needs retagging. | ||
| fn is_not_temp<'tcx>(local_decl: &LocalDecl<'tcx>) -> bool { |
There was a problem hiding this comment.
is_temp would be slightly clearer I think; return false inside this function is a double negation which is somewhat confusing.
There was a problem hiding this comment.
You are right, I will change this function in the next update of derefer.
| /// A temporary created during the creation of an aggregate | ||
| /// (e.g. a temporary for `foo` in `MyStruct { my_field: foo }`) | ||
| AggregateTemp, | ||
| /// A temporary created during the pass `Derefer` to avoid it's retagging |
There was a problem hiding this comment.
(should be "its retagging"... not a big deal though)
…idtwco Add validation layer for Derefer _Follow up work to rust-lang#96549 rust-lang#96116 rust-lang#95857 #95649_ This adds validation for Derefer making sure it is always the first projection. r? rust-lang/mir-opt
…twco Add validation layer for Derefer _Follow up work to rust-lang#96549 rust-lang#96116 rust-lang#95857 #95649_ This adds validation for Derefer making sure it is always the first projection. r? rust-lang/mir-opt
Pull Derefer before ElaborateDrops _Follow up work to rust-lang#97025 rust-lang#96549 rust-lang#96116 rust-lang#95887 #95649_ This moves `Derefer` before `ElaborateDrops` and creates a new `Rvalue` called `VirtualRef` that allows us to bypass many constraints for `DerefTemp`. r? `@oli-obk`
Pull Derefer before ElaborateDrops _Follow up work to rust-lang#97025 rust-lang#96549 rust-lang#96116 rust-lang#95887 #95649_ This moves `Derefer` before `ElaborateDrops` and creates a new `Rvalue` called `VirtualRef` that allows us to bypass many constraints for `DerefTemp`. r? ``@oli-obk``
Pull Derefer before ElaborateDrops _Follow up work to rust-lang#97025 rust-lang#96549 rust-lang#96116 rust-lang#95887 #95649_ This moves `Derefer` before `ElaborateDrops` and creates a new `Rvalue` called `VirtualRef` that allows us to bypass many constraints for `DerefTemp`. r? `@oli-obk`
Pull Derefer before ElaborateDrops _Follow up work to rust-lang#97025 rust-lang#96549 rust-lang#96116 rust-lang#95887 #95649_ This moves `Derefer` before `ElaborateDrops` and creates a new `Rvalue` called `VirtualRef` that allows us to bypass many constraints for `DerefTemp`. r? `@oli-obk`
Pull Derefer before ElaborateDrops _Follow up work to rust-lang#97025 rust-lang#96549 rust-lang#96116 rust-lang#95887 #95649_ This moves `Derefer` before `ElaborateDrops` and creates a new `Rvalue` called `VirtualRef` that allows us to bypass many constraints for `DerefTemp`. r? `@oli-obk`
Follow up work to #96116 #95857 #95649
This moves
DereferbeforeRetagand creates a newLocalInfocalledTempto avoid retagging created temp values.Zulip discussion link
r? @oli-obk