// MIR for `::partial_cmp` after PreCodegen fn ::partial_cmp(_1: &MultiField, _2: &MultiField) -> Option { debug self => _1; debug other => _2; let mut _0: std::option::Option; let mut _6: std::option::Option; let mut _7: i8; scope 1 { debug cmp => _6; } scope 2 (inlined std::cmp::impls::::partial_cmp) { let mut _3: char; let mut _4: char; let mut _5: std::cmp::Ordering; } scope 3 (inlined std::cmp::impls::::partial_cmp) { let mut _8: i16; let mut _9: i16; let mut _10: std::cmp::Ordering; } bb0: { StorageLive(_3); _3 = ((*_1).0: char); StorageLive(_4); _4 = ((*_2).0: char); _5 = Cmp(move _3, move _4); StorageDead(_4); StorageDead(_3); _6 = Option::::Some(_5); _7 = discriminant(_5); switchInt(move _7) -> [0: bb1, otherwise: bb2]; } bb1: { StorageLive(_10); StorageLive(_8); _8 = ((*_1).1: i16); StorageLive(_9); _9 = ((*_2).1: i16); _10 = Cmp(move _8, move _9); StorageDead(_9); StorageDead(_8); _0 = Option::::Some(move _10); StorageDead(_10); goto -> bb3; } bb2: { _0 = _6; goto -> bb3; } bb3: { return; } }