// MIR for `single_switchint` after SimplifyCfg-initial fn single_switchint() -> () { let mut _0: (); let _1: i32; let mut _2: (i32, bool); bb0: { StorageLive(_1); StorageLive(_2); _2 = (const 1_i32, const true); PlaceMention(_2); switchInt(copy (_2.0: i32)) -> [1: bb2, 2: bb4, otherwise: bb1]; } bb1: { switchInt(copy (_2.0: i32)) -> [3: bb8, 4: bb8, otherwise: bb7]; } bb2: { switchInt(copy (_2.1: bool)) -> [0: bb6, otherwise: bb3]; } bb3: { falseEdge -> [real: bb12, imaginary: bb4]; } bb4: { switchInt(copy (_2.1: bool)) -> [0: bb5, otherwise: bb6]; } bb5: { falseEdge -> [real: bb11, imaginary: bb6]; } bb6: { falseEdge -> [real: bb10, imaginary: bb1]; } bb7: { _1 = const 5_i32; goto -> bb13; } bb8: { falseEdge -> [real: bb9, imaginary: bb7]; } bb9: { _1 = const 4_i32; goto -> bb13; } bb10: { _1 = const 3_i32; goto -> bb13; } bb11: { _1 = const 2_i32; goto -> bb13; } bb12: { _1 = const 1_i32; goto -> bb13; } bb13: { StorageDead(_2); StorageDead(_1); _0 = const (); return; } }