summaryrefslogtreecommitdiffstats
path: root/tests/mir-opt/gvn.arithmetic_float.GVN.panic-unwind.diff
diff options
context:
space:
mode:
Diffstat (limited to 'tests/mir-opt/gvn.arithmetic_float.GVN.panic-unwind.diff')
-rw-r--r--tests/mir-opt/gvn.arithmetic_float.GVN.panic-unwind.diff165
1 files changed, 165 insertions, 0 deletions
diff --git a/tests/mir-opt/gvn.arithmetic_float.GVN.panic-unwind.diff b/tests/mir-opt/gvn.arithmetic_float.GVN.panic-unwind.diff
new file mode 100644
index 000000000..36c26dc66
--- /dev/null
+++ b/tests/mir-opt/gvn.arithmetic_float.GVN.panic-unwind.diff
@@ -0,0 +1,165 @@
+- // MIR for `arithmetic_float` before GVN
++ // MIR for `arithmetic_float` after GVN
+
+ fn arithmetic_float(_1: f64) -> () {
+ debug x => _1;
+ let mut _0: ();
+ let _2: ();
+ let mut _3: f64;
+ let mut _4: f64;
+ let _5: ();
+ let mut _6: f64;
+ let mut _7: f64;
+ let _8: ();
+ let mut _9: f64;
+ let mut _10: f64;
+ let _11: ();
+ let mut _12: f64;
+ let mut _13: f64;
+ let _14: ();
+ let mut _15: f64;
+ let mut _16: f64;
+ let _17: ();
+ let mut _18: f64;
+ let mut _19: f64;
+ let _20: ();
+ let mut _21: f64;
+ let mut _22: f64;
+ let _23: ();
+ let mut _24: bool;
+ let mut _25: f64;
+ let mut _26: f64;
+ let _27: ();
+ let mut _28: bool;
+ let mut _29: f64;
+ let mut _30: f64;
+
+ bb0: {
+ StorageLive(_2);
+ StorageLive(_3);
+- StorageLive(_4);
+- _4 = _1;
+- _3 = Add(move _4, const 0f64);
+- StorageDead(_4);
++ _3 = Add(_1, const 0f64);
+ _2 = opaque::<f64>(move _3) -> [return: bb1, unwind continue];
+ }
+
+ bb1: {
+ StorageDead(_3);
+ StorageDead(_2);
+ StorageLive(_5);
+ StorageLive(_6);
+- StorageLive(_7);
+- _7 = _1;
+- _6 = Sub(move _7, const 0f64);
+- StorageDead(_7);
++ _6 = Sub(_1, const 0f64);
+ _5 = opaque::<f64>(move _6) -> [return: bb2, unwind continue];
+ }
+
+ bb2: {
+ StorageDead(_6);
+ StorageDead(_5);
+ StorageLive(_8);
+ StorageLive(_9);
+- StorageLive(_10);
+- _10 = _1;
+- _9 = Mul(move _10, const 0f64);
+- StorageDead(_10);
++ _9 = Mul(_1, const 0f64);
+ _8 = opaque::<f64>(move _9) -> [return: bb3, unwind continue];
+ }
+
+ bb3: {
+ StorageDead(_9);
+ StorageDead(_8);
+ StorageLive(_11);
+ StorageLive(_12);
+- StorageLive(_13);
+- _13 = _1;
+- _12 = Div(move _13, const 0f64);
+- StorageDead(_13);
++ _12 = Div(_1, const 0f64);
+ _11 = opaque::<f64>(move _12) -> [return: bb4, unwind continue];
+ }
+
+ bb4: {
+ StorageDead(_12);
+ StorageDead(_11);
+ StorageLive(_14);
+ StorageLive(_15);
+- StorageLive(_16);
+- _16 = _1;
+- _15 = Div(const 0f64, move _16);
+- StorageDead(_16);
++ _15 = Div(const 0f64, _1);
+ _14 = opaque::<f64>(move _15) -> [return: bb5, unwind continue];
+ }
+
+ bb5: {
+ StorageDead(_15);
+ StorageDead(_14);
+ StorageLive(_17);
+ StorageLive(_18);
+- StorageLive(_19);
+- _19 = _1;
+- _18 = Rem(move _19, const 0f64);
+- StorageDead(_19);
++ _18 = Rem(_1, const 0f64);
+ _17 = opaque::<f64>(move _18) -> [return: bb6, unwind continue];
+ }
+
+ bb6: {
+ StorageDead(_18);
+ StorageDead(_17);
+ StorageLive(_20);
+ StorageLive(_21);
+- StorageLive(_22);
+- _22 = _1;
+- _21 = Rem(const 0f64, move _22);
+- StorageDead(_22);
++ _21 = Rem(const 0f64, _1);
+ _20 = opaque::<f64>(move _21) -> [return: bb7, unwind continue];
+ }
+
+ bb7: {
+ StorageDead(_21);
+ StorageDead(_20);
+ StorageLive(_23);
+ StorageLive(_24);
+- StorageLive(_25);
+- _25 = _1;
+- StorageLive(_26);
+- _26 = _1;
+- _24 = Eq(move _25, move _26);
+- StorageDead(_26);
+- StorageDead(_25);
++ _24 = Eq(_1, _1);
+ _23 = opaque::<bool>(move _24) -> [return: bb8, unwind continue];
+ }
+
+ bb8: {
+ StorageDead(_24);
+ StorageDead(_23);
+ StorageLive(_27);
+ StorageLive(_28);
+- StorageLive(_29);
+- _29 = _1;
+- StorageLive(_30);
+- _30 = _1;
+- _28 = Ne(move _29, move _30);
+- StorageDead(_30);
+- StorageDead(_29);
++ _28 = Ne(_1, _1);
+ _27 = opaque::<bool>(move _28) -> [return: bb9, unwind continue];
+ }
+
+ bb9: {
+ StorageDead(_28);
+ StorageDead(_27);
+ _0 = const ();
+ return;
+ }
+ }
+