about summary refs log tree commit diff
path: root/tests/mir-opt/gvn.duplicate_slice.GVN.panic-unwind.diff
diff options
context:
space:
mode:
authorCamille GILLOT <gillot.camille@gmail.com>2023-10-14 12:12:54 +0000
committerCamille GILLOT <gillot.camille@gmail.com>2023-10-25 06:46:48 +0000
commit5e78b9cdb39f2cd47a0518ba568e7bfd0d1f8d95 (patch)
treeebae7f382d4f24f5ea1ea2b0afd903c49feed1fa /tests/mir-opt/gvn.duplicate_slice.GVN.panic-unwind.diff
parentf08dc9be17aff80e248d37a768faa6cc8738d371 (diff)
downloadrust-5e78b9cdb39f2cd47a0518ba568e7bfd0d1f8d95.tar.gz
rust-5e78b9cdb39f2cd47a0518ba568e7bfd0d1f8d95.zip
Disambiguate non-deterministic constants.
Diffstat (limited to 'tests/mir-opt/gvn.duplicate_slice.GVN.panic-unwind.diff')
-rw-r--r--tests/mir-opt/gvn.duplicate_slice.GVN.panic-unwind.diff38
1 files changed, 38 insertions, 0 deletions
diff --git a/tests/mir-opt/gvn.duplicate_slice.GVN.panic-unwind.diff b/tests/mir-opt/gvn.duplicate_slice.GVN.panic-unwind.diff
new file mode 100644
index 00000000000..8c96edaa280
--- /dev/null
+++ b/tests/mir-opt/gvn.duplicate_slice.GVN.panic-unwind.diff
@@ -0,0 +1,38 @@
+- // MIR for `duplicate_slice` before GVN
++ // MIR for `duplicate_slice` after GVN
+  
+  fn duplicate_slice() -> (bool, bool) {
+      let mut _0: (bool, bool);
+      let mut _1: u128;
+      let mut _2: u128;
+      let mut _3: u128;
+      let mut _4: u128;
+      let mut _5: &str;
+      let mut _6: &str;
+      let mut _7: (&str,);
+      let mut _8: &str;
+      let mut _9: bool;
+      let mut _10: bool;
+  
+      bb0: {
+          _7 = (const "a",);
+          _1 = (_7.0: &str) as u128 (Transmute);
+          _5 = identity::<&str>((_7.0: &str)) -> [return: bb1, unwind continue];
+      }
+  
+      bb1: {
+          _3 = _5 as u128 (Transmute);
+          _8 = const "a";
+          _2 = _8 as u128 (Transmute);
+          _6 = identity::<&str>(_8) -> [return: bb2, unwind continue];
+      }
+  
+      bb2: {
+          _4 = _6 as u128 (Transmute);
+          _9 = Eq(_1, _2);
+          _10 = Eq(_3, _4);
+          _0 = (_9, _10);
+          return;
+      }
+  }
+