Sparse flow-sensitive pointer analysis for multithreaded programs | Synapse