2023-10-16 16:44:36 -05:00
|
|
|
- // MIR for `comparison` before GVN
|
|
|
|
+ // MIR for `comparison` after GVN
|
|
|
|
|
|
|
|
fn comparison(_1: u64, _2: u64) -> () {
|
|
|
|
debug x => _1;
|
|
|
|
debug y => _2;
|
|
|
|
let mut _0: ();
|
|
|
|
let _3: ();
|
|
|
|
let mut _4: bool;
|
|
|
|
let mut _5: u64;
|
|
|
|
let mut _6: u64;
|
|
|
|
let _7: ();
|
|
|
|
let mut _8: bool;
|
|
|
|
let mut _9: u64;
|
|
|
|
let mut _10: u64;
|
|
|
|
let _11: ();
|
|
|
|
let mut _12: bool;
|
|
|
|
let mut _13: u64;
|
|
|
|
let mut _14: u64;
|
|
|
|
let _15: ();
|
|
|
|
let mut _16: bool;
|
|
|
|
let mut _17: u64;
|
|
|
|
let mut _18: u64;
|
|
|
|
|
|
|
|
bb0: {
|
|
|
|
StorageLive(_3);
|
|
|
|
StorageLive(_4);
|
|
|
|
StorageLive(_5);
|
|
|
|
_5 = _1;
|
|
|
|
StorageLive(_6);
|
|
|
|
_6 = _1;
|
|
|
|
- _4 = Eq(move _5, move _6);
|
2023-03-20 16:37:36 -05:00
|
|
|
+ _4 = const true;
|
2023-10-16 16:44:36 -05:00
|
|
|
StorageDead(_6);
|
|
|
|
StorageDead(_5);
|
2023-03-20 16:37:36 -05:00
|
|
|
- _3 = opaque::<bool>(move _4) -> [return: bb1, unwind unreachable];
|
|
|
|
+ _3 = opaque::<bool>(const true) -> [return: bb1, unwind unreachable];
|
2023-10-16 16:44:36 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
bb1: {
|
|
|
|
StorageDead(_4);
|
|
|
|
StorageDead(_3);
|
|
|
|
StorageLive(_7);
|
|
|
|
StorageLive(_8);
|
|
|
|
StorageLive(_9);
|
|
|
|
_9 = _1;
|
|
|
|
StorageLive(_10);
|
|
|
|
_10 = _1;
|
|
|
|
- _8 = Ne(move _9, move _10);
|
2023-03-20 16:37:36 -05:00
|
|
|
+ _8 = const false;
|
2023-10-16 16:44:36 -05:00
|
|
|
StorageDead(_10);
|
|
|
|
StorageDead(_9);
|
2023-03-20 16:37:36 -05:00
|
|
|
- _7 = opaque::<bool>(move _8) -> [return: bb2, unwind unreachable];
|
|
|
|
+ _7 = opaque::<bool>(const false) -> [return: bb2, unwind unreachable];
|
2023-10-16 16:44:36 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
bb2: {
|
|
|
|
StorageDead(_8);
|
|
|
|
StorageDead(_7);
|
|
|
|
StorageLive(_11);
|
|
|
|
StorageLive(_12);
|
|
|
|
StorageLive(_13);
|
|
|
|
_13 = _1;
|
|
|
|
StorageLive(_14);
|
|
|
|
_14 = _2;
|
|
|
|
- _12 = Eq(move _13, move _14);
|
|
|
|
+ _12 = Eq(_1, _2);
|
|
|
|
StorageDead(_14);
|
|
|
|
StorageDead(_13);
|
|
|
|
_11 = opaque::<bool>(move _12) -> [return: bb3, unwind unreachable];
|
|
|
|
}
|
|
|
|
|
|
|
|
bb3: {
|
|
|
|
StorageDead(_12);
|
|
|
|
StorageDead(_11);
|
|
|
|
StorageLive(_15);
|
|
|
|
StorageLive(_16);
|
|
|
|
StorageLive(_17);
|
|
|
|
_17 = _1;
|
|
|
|
StorageLive(_18);
|
|
|
|
_18 = _2;
|
|
|
|
- _16 = Ne(move _17, move _18);
|
|
|
|
+ _16 = Ne(_1, _2);
|
|
|
|
StorageDead(_18);
|
|
|
|
StorageDead(_17);
|
|
|
|
_15 = opaque::<bool>(move _16) -> [return: bb4, unwind unreachable];
|
|
|
|
}
|
|
|
|
|
|
|
|
bb4: {
|
|
|
|
StorageDead(_16);
|
|
|
|
StorageDead(_15);
|
|
|
|
_0 = const ();
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|