// MIR for `slice_get_mut_usize` after PreCodegen fn slice_get_mut_usize(_1: &mut [u32], _2: usize) -> Option<&mut u32> { debug slice => _1; debug index => _2; let mut _0: std::option::Option<&mut u32>; scope 1 (inlined core::slice::::get_mut::) { scope 2 (inlined >::get_mut) { let mut _3: usize; let mut _4: bool; let mut _5: &mut u32; } } bb0: { StorageLive(_4); StorageLive(_3); _3 = PtrMetadata(copy _1); _4 = Lt(copy _2, move _3); switchInt(move _4) -> [0: bb1, otherwise: bb2]; } bb1: { StorageDead(_3); _0 = const Option::<&mut u32>::None; goto -> bb3; } bb2: { StorageDead(_3); StorageLive(_5); _5 = &mut (*_1)[_2]; _0 = Option::<&mut u32>::Some(copy _5); StorageDead(_5); goto -> bb3; } bb3: { StorageDead(_4); return; } }