1
Fork 0

Add test.

This commit is contained in:
Camille GILLOT 2023-04-25 20:09:41 +00:00
parent 6ce22733b9
commit 77dac91d4f
2 changed files with 34 additions and 0 deletions

View file

@ -0,0 +1,25 @@
- // MIR for `main` before DeadStoreElimination
+ // MIR for `main` after DeadStoreElimination
fn main() -> () {
let mut _0: (); // return place in scope 0 at $DIR/place_mention.rs:+0:11: +0:11
let mut _1: (&str, &str); // in scope 0 at $DIR/place_mention.rs:+3:18: +3:36
scope 1 {
}
bb0: {
StorageLive(_1); // scope 0 at $DIR/place_mention.rs:+3:18: +3:36
- _1 = (const "Hello", const "World"); // scope 0 at $DIR/place_mention.rs:+3:18: +3:36
- // mir::Constant
- // + span: $DIR/place_mention.rs:8:19: 8:26
- // + literal: Const { ty: &str, val: Value(Slice(..)) }
- // mir::Constant
- // + span: $DIR/place_mention.rs:8:28: 8:35
- // + literal: Const { ty: &str, val: Value(Slice(..)) }
PlaceMention(_1); // scope 0 at $DIR/place_mention.rs:+3:18: +3:36
StorageDead(_1); // scope 0 at $DIR/place_mention.rs:+3:36: +3:37
_0 = const (); // scope 0 at $DIR/place_mention.rs:+0:11: +4:2
return; // scope 0 at $DIR/place_mention.rs:+4:2: +4:2
}
}

View file

@ -0,0 +1,9 @@
// unit-test: DeadStoreElimination
// compile-flags: -Zmir-keep-place-mention
// EMIT_MIR place_mention.main.DeadStoreElimination.diff
fn main() {
// Verify that we account for the `PlaceMention` statement as a use of the tuple,
// and don't remove it as a dead store.
let (_, _) = ("Hello", "World");
}