// MIR for `while_loop` after PreCodegen fn while_loop(_1: bool) -> () { debug c => _1; let mut _0: (); let mut _2: bool; let mut _3: bool; let mut _4: bool; let mut _5: bool; let mut _6: (); let mut _7: !; let mut _8: !; let _9: (); let mut _10: !; bb0: { goto -> bb1; } bb1: { StorageLive(_3); StorageLive(_2); _2 = _1; _3 = get_bool(move _2) -> [return: bb2, unwind continue]; } bb2: { switchInt(move _3) -> [0: bb3, otherwise: bb4]; } bb3: { StorageDead(_2); StorageLive(_9); _0 = const (); StorageDead(_9); goto -> bb8; } bb4: { StorageDead(_2); StorageLive(_5); StorageLive(_4); _4 = _1; _5 = get_bool(move _4) -> [return: bb5, unwind continue]; } bb5: { switchInt(move _5) -> [0: bb6, otherwise: bb7]; } bb6: { StorageDead(_4); _6 = const (); StorageDead(_5); StorageDead(_3); goto -> bb1; } bb7: { StorageDead(_4); _0 = const (); StorageDead(_5); goto -> bb8; } bb8: { StorageDead(_3); return; } }