Skip to main content

reachable_while_storage_live

Function reachable_while_storage_live 

Source
fn reachable_while_storage_live<const N: usize>(
    locals: &[Local; N],
    mir: &Body<'_>,
    location: Location,
) -> Option<IndexVec<BasicBlock, u8>>
Expand description

Starting from the specified location, determines which blocks may be entered while any of the locals are still live.

Returns:

  • None if location.block may be re-entered while any of the locals are live.
  • Some with (for each BasicBlock) a bitset representing which of the locals are potentially live at the start of the block. Bit i stands for locals[i]. The exception is location.block, which is entered at location and therefore has every bit set.