A case was found where, for a given alloca,
* all users were contained in a single loop (so there are no cases where the lifetime contains an exiting edge),
* one of the instructions was leaking the lifetime
The result was that the entire loop was included in the lifetime set, but the preheader wasn't. This ended up crashing because there was no single block that could be marked as starting the lifetime.
The fix is to make liveness leak analyzing block work on it's own separate sets of basic block, then merge the result with the actual bbIn and bbOut sets.
(cherry picked from commit cdc2d03445ff8dd1b49fa59301edfc85455abc5d)