| - // MIR for `dont_remove_comparison` before SimplifyComparisonIntegral |
| + // MIR for `dont_remove_comparison` after SimplifyComparisonIntegral |
| |
| fn dont_remove_comparison(_1: i8) -> i32 { |
| debug a => _1; |
| let mut _0: i32; |
| let _2: bool; |
| let mut _3: i8; |
| let mut _4: i32; |
| let mut _5: bool; |
| let mut _6: i32; |
| let mut _7: bool; |
| scope 1 { |
| debug b => _2; |
| } |
| |
| bb0: { |
| StorageLive(_2); |
| StorageLive(_3); |
| _3 = _1; |
| - _2 = Eq(move _3, const 17_i8); |
| - StorageDead(_3); |
| - switchInt(_2) -> [0: bb2, otherwise: bb1]; |
| + _2 = Eq(_3, const 17_i8); |
| + nop; |
| + switchInt(move _3) -> [17: bb1, otherwise: bb2]; |
| } |
| |
| bb1: { |
| + StorageDead(_3); |
| StorageLive(_6); |
| StorageLive(_7); |
| _7 = _2; |
| _6 = move _7 as i32 (IntToInt); |
| StorageDead(_7); |
| _0 = Add(const 100_i32, move _6); |
| StorageDead(_6); |
| goto -> bb3; |
| } |
| |
| bb2: { |
| + StorageDead(_3); |
| StorageLive(_4); |
| StorageLive(_5); |
| _5 = _2; |
| _4 = move _5 as i32 (IntToInt); |
| StorageDead(_5); |
| _0 = Add(const 10_i32, move _4); |
| StorageDead(_4); |
| goto -> bb3; |
| } |
| |
| bb3: { |
| StorageDead(_2); |
| return; |
| } |
| } |
| |