Make reachable reusable in dead-code pass
Add dead-code warning pass
Remove dead codes