This fixes PR33357 where LVI recursed infinitely when used on dead blocks.
Now instead of the previous simple check where we just deemed a block dead
if it had no predecessors we now flush DDT and use DT to determine if
a block is really reachable from entry before processing it.