Added AnalysisConsumer, a meta-level ASTConsumer class to drive various
analyses. This potentially is the primordial origins of a Clang-equivalent
"PassManager".

The new AnalysisConsumer interface allows multiple analyses to be run from a
single invocation of Clang.

Migrated the logic of "-warn-dead-stores" and "-warn-uninit-values" to use the
new AnalysisConsumer interface. The new interface results in a significant code
reduction to incorporate an analysis into the Driver.

Updated a test case to (correctly) acknowledge that it contains a dead store
(this check wasn't being performed because it was previously masked by
-warn-uninit-values).


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52996 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/Driver/ASTConsumers.h b/Driver/ASTConsumers.h
index ca93e0f..5853664 100644
--- a/Driver/ASTConsumers.h
+++ b/Driver/ASTConsumers.h
@@ -30,7 +30,6 @@
 class Preprocessor;
 class PreprocessorFactory;
 
-
 ASTConsumer *CreateASTPrinter(std::ostream* OS = NULL);
 
 ASTConsumer *CreateASTDumper();
@@ -41,10 +40,6 @@
 
 ASTConsumer *CreateLiveVarAnalyzer(const std::string& fname);
 
-ASTConsumer *CreateDeadStoreChecker(Diagnostic &Diags);
-
-ASTConsumer *CreateUnitValsChecker(Diagnostic &Diags);
-  
 ASTConsumer *CreateGRSimpleVals(Diagnostic &Diags,
                                 Preprocessor* PP, PreprocessorFactory* PPF,
                                 const std::string& Function,
@@ -75,4 +70,6 @@
 
 } // end clang namespace
 
+#include "AnalysisConsumer.h"
+
 #endif