Flow-Sensitive Pointer Analysis for Millions of Lines of Code