summaryrefslogtreecommitdiffstats
path: root/tests/mir-opt/copy-prop/dead_stores_better.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/mir-opt/copy-prop/dead_stores_better.rs')
-rw-r--r--tests/mir-opt/copy-prop/dead_stores_better.rs21
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/mir-opt/copy-prop/dead_stores_better.rs b/tests/mir-opt/copy-prop/dead_stores_better.rs
new file mode 100644
index 000000000..8465b3c98
--- /dev/null
+++ b/tests/mir-opt/copy-prop/dead_stores_better.rs
@@ -0,0 +1,21 @@
+// This is a copy of the `dead_stores_79191` test, except that we turn on DSE. This demonstrates
+// that that pass enables this one to do more optimizations.
+
+// unit-test: CopyProp
+// compile-flags: -Zmir-enable-passes=+DeadStoreElimination
+
+fn id<T>(x: T) -> T {
+ x
+}
+
+// EMIT_MIR dead_stores_better.f.CopyProp.after.mir
+pub fn f(mut a: usize) -> usize {
+ let b = a;
+ a = 5;
+ a = b;
+ id(a)
+}
+
+fn main() {
+ f(0);
+}