* Eliminate boolean arguments in favor of using enums
* T-D pass now eliminates unreachable globals


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5419 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Analysis/DataStructure/TopDownClosure.cpp b/lib/Analysis/DataStructure/TopDownClosure.cpp
index da9bc7c..b867f7e 100644
--- a/lib/Analysis/DataStructure/TopDownClosure.cpp
+++ b/lib/Analysis/DataStructure/TopDownClosure.cpp
@@ -186,9 +186,10 @@
 
       // Recompute the Incomplete markers and eliminate unreachable nodes.
       CG.maskIncompleteMarkers();
-      CG.markIncompleteNodes(/*markFormals*/ !F.hasInternalLinkage()
+      CG.markIncompleteNodes(F.hasInternalLinkage() ? DSGraph::IgnoreFormalArgs:
+                             DSGraph::MarkFormalArgs
                              /*&& FIXME: NEED TO CHECK IF ALL CALLERS FOUND!*/);
-      CG.removeDeadNodes();
+      CG.removeDeadNodes(DSGraph::RemoveUnreachableGlobals);
     }
 
   DEBUG(std::cerr << "  [TD] Done inlining into callees for: " << F.getName()