liveness analysis. needs some work from the basic blocks