2023-03-20 13:05:07 -05:00
|
|
|
- // 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);
|
2023-09-16 12:13:30 -05:00
|
|
|
StorageLive(_4);
|
|
|
|
_4 = copy _1;
|
2023-03-20 13:05:07 -05:00
|
|
|
- _3 = Add(move _4, const 0f64);
|
|
|
|
+ _3 = Add(copy _1, const 0f64);
|
2023-09-16 12:13:30 -05:00
|
|
|
StorageDead(_4);
|
2023-03-20 13:05:07 -05:00
|
|
|
_2 = opaque::<f64>(move _3) -> [return: bb1, unwind unreachable];
|
|
|
|
}
|
|
|
|
|
|
|
|
bb1: {
|
|
|
|
StorageDead(_3);
|
|
|
|
StorageDead(_2);
|
|
|
|
StorageLive(_5);
|
|
|
|
StorageLive(_6);
|
2023-09-16 12:13:30 -05:00
|
|
|
StorageLive(_7);
|
|
|
|
_7 = copy _1;
|
2023-03-20 13:05:07 -05:00
|
|
|
- _6 = Sub(move _7, const 0f64);
|
|
|
|
+ _6 = Sub(copy _1, const 0f64);
|
2023-09-16 12:13:30 -05:00
|
|
|
StorageDead(_7);
|
2023-03-20 13:05:07 -05:00
|
|
|
_5 = opaque::<f64>(move _6) -> [return: bb2, unwind unreachable];
|
|
|
|
}
|
|
|
|
|
|
|
|
bb2: {
|
|
|
|
StorageDead(_6);
|
|
|
|
StorageDead(_5);
|
|
|
|
StorageLive(_8);
|
|
|
|
StorageLive(_9);
|
2023-09-16 12:13:30 -05:00
|
|
|
StorageLive(_10);
|
|
|
|
_10 = copy _1;
|
2023-03-20 13:05:07 -05:00
|
|
|
- _9 = Mul(move _10, const 0f64);
|
|
|
|
+ _9 = Mul(copy _1, const 0f64);
|
2023-09-16 12:13:30 -05:00
|
|
|
StorageDead(_10);
|
2023-03-20 13:05:07 -05:00
|
|
|
_8 = opaque::<f64>(move _9) -> [return: bb3, unwind unreachable];
|
|
|
|
}
|
|
|
|
|
|
|
|
bb3: {
|
|
|
|
StorageDead(_9);
|
|
|
|
StorageDead(_8);
|
|
|
|
StorageLive(_11);
|
|
|
|
StorageLive(_12);
|
2023-09-16 12:13:30 -05:00
|
|
|
StorageLive(_13);
|
|
|
|
_13 = copy _1;
|
2023-03-20 13:05:07 -05:00
|
|
|
- _12 = Div(move _13, const 0f64);
|
|
|
|
+ _12 = Div(copy _1, const 0f64);
|
2023-09-16 12:13:30 -05:00
|
|
|
StorageDead(_13);
|
2023-03-20 13:05:07 -05:00
|
|
|
_11 = opaque::<f64>(move _12) -> [return: bb4, unwind unreachable];
|
|
|
|
}
|
|
|
|
|
|
|
|
bb4: {
|
|
|
|
StorageDead(_12);
|
|
|
|
StorageDead(_11);
|
|
|
|
StorageLive(_14);
|
|
|
|
StorageLive(_15);
|
2023-09-16 12:13:30 -05:00
|
|
|
StorageLive(_16);
|
|
|
|
_16 = copy _1;
|
2023-03-20 13:05:07 -05:00
|
|
|
- _15 = Div(const 0f64, move _16);
|
|
|
|
+ _15 = Div(const 0f64, copy _1);
|
2023-09-16 12:13:30 -05:00
|
|
|
StorageDead(_16);
|
2023-03-20 13:05:07 -05:00
|
|
|
_14 = opaque::<f64>(move _15) -> [return: bb5, unwind unreachable];
|
|
|
|
}
|
|
|
|
|
|
|
|
bb5: {
|
|
|
|
StorageDead(_15);
|
|
|
|
StorageDead(_14);
|
|
|
|
StorageLive(_17);
|
|
|
|
StorageLive(_18);
|
2023-09-16 12:13:30 -05:00
|
|
|
StorageLive(_19);
|
|
|
|
_19 = copy _1;
|
2023-03-20 13:05:07 -05:00
|
|
|
- _18 = Rem(move _19, const 0f64);
|
|
|
|
+ _18 = Rem(copy _1, const 0f64);
|
2023-09-16 12:13:30 -05:00
|
|
|
StorageDead(_19);
|
2023-03-20 13:05:07 -05:00
|
|
|
_17 = opaque::<f64>(move _18) -> [return: bb6, unwind unreachable];
|
|
|
|
}
|
|
|
|
|
|
|
|
bb6: {
|
|
|
|
StorageDead(_18);
|
|
|
|
StorageDead(_17);
|
|
|
|
StorageLive(_20);
|
|
|
|
StorageLive(_21);
|
2023-09-16 12:13:30 -05:00
|
|
|
StorageLive(_22);
|
|
|
|
_22 = copy _1;
|
2023-03-20 13:05:07 -05:00
|
|
|
- _21 = Rem(const 0f64, move _22);
|
|
|
|
+ _21 = Rem(const 0f64, copy _1);
|
2023-09-16 12:13:30 -05:00
|
|
|
StorageDead(_22);
|
2023-03-20 13:05:07 -05:00
|
|
|
_20 = opaque::<f64>(move _21) -> [return: bb7, unwind unreachable];
|
|
|
|
}
|
|
|
|
|
|
|
|
bb7: {
|
|
|
|
StorageDead(_21);
|
|
|
|
StorageDead(_20);
|
|
|
|
StorageLive(_23);
|
|
|
|
StorageLive(_24);
|
2023-09-16 12:13:30 -05:00
|
|
|
StorageLive(_25);
|
|
|
|
_25 = copy _1;
|
|
|
|
StorageLive(_26);
|
|
|
|
_26 = copy _1;
|
2023-03-20 13:05:07 -05:00
|
|
|
- _24 = Eq(move _25, move _26);
|
|
|
|
+ _24 = Eq(copy _1, copy _1);
|
2023-09-16 12:13:30 -05:00
|
|
|
StorageDead(_26);
|
|
|
|
StorageDead(_25);
|
2023-03-20 13:05:07 -05:00
|
|
|
_23 = opaque::<bool>(move _24) -> [return: bb8, unwind unreachable];
|
|
|
|
}
|
|
|
|
|
|
|
|
bb8: {
|
|
|
|
StorageDead(_24);
|
|
|
|
StorageDead(_23);
|
|
|
|
StorageLive(_27);
|
|
|
|
StorageLive(_28);
|
2023-09-16 12:13:30 -05:00
|
|
|
StorageLive(_29);
|
|
|
|
_29 = copy _1;
|
|
|
|
StorageLive(_30);
|
|
|
|
_30 = copy _1;
|
2023-03-20 13:05:07 -05:00
|
|
|
- _28 = Ne(move _29, move _30);
|
|
|
|
+ _28 = Ne(copy _1, copy _1);
|
2023-09-16 12:13:30 -05:00
|
|
|
StorageDead(_30);
|
|
|
|
StorageDead(_29);
|
2023-03-20 13:05:07 -05:00
|
|
|
_27 = opaque::<bool>(move _28) -> [return: bb9, unwind unreachable];
|
|
|
|
}
|
|
|
|
|
|
|
|
bb9: {
|
|
|
|
StorageDead(_28);
|
|
|
|
StorageDead(_27);
|
|
|
|
_0 = const ();
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|