Add CFG::BuildOptions class to pass in CFG builder options under on parameter.  Patch by Marcin Świderski!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113898 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Analysis/AnalysisContext.cpp b/lib/Analysis/AnalysisContext.cpp
index bf9f967..188a6f8 100644
--- a/lib/Analysis/AnalysisContext.cpp
+++ b/lib/Analysis/AnalysisContext.cpp
@@ -59,7 +59,9 @@
     return getUnoptimizedCFG();
 
   if (!builtCFG) {
-    cfg = CFG::buildCFG(D, getBody(), &D->getASTContext(), true, AddEHEdges);
+    CFG::BuildOptions B;
+    B.AddEHEdges = AddEHEdges;
+    cfg = CFG::buildCFG(D, getBody(), &D->getASTContext(), B);
     // Even when the cfg is not successfully built, we don't
     // want to try building it again.
     builtCFG = true;
@@ -69,8 +71,10 @@
 
 CFG *AnalysisContext::getUnoptimizedCFG() {
   if (!builtCompleteCFG) {
-    completeCFG = CFG::buildCFG(D, getBody(), &D->getASTContext(),
-                                false, AddEHEdges);
+    CFG::BuildOptions B;
+    B.PruneTriviallyFalseEdges = false;
+    B.AddEHEdges = AddEHEdges;
+    completeCFG = CFG::buildCFG(D, getBody(), &D->getASTContext(), B);
     // Even when the cfg is not successfully built, we don't
     // want to try building it again.
     builtCompleteCFG = true;