fn split_range_by_block(
points: &DenseLocationMap,
range: RangeInclusive<SplitPointIndex>,
) -> impl Iterator<Item = (RangeBoundary, RangeBoundary)>Expand description
Splits a live interval at block boundaries, returning the location at which storage statements need to be inserted at the start and end of the range.
This is needed because SparseIntervalMatrix coalesces numerically adjacent
ranges, which can span multiple basic blocks.