Hooked up the GRConstants analysis to the driver.
Fixed some compilation errors with GREngine that showed up during
template instantiation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@46074 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/Driver/ASTConsumers.cpp b/Driver/ASTConsumers.cpp
index 1bbdf38..5a5a039 100644
--- a/Driver/ASTConsumers.cpp
+++ b/Driver/ASTConsumers.cpp
@@ -19,6 +19,7 @@
#include "clang/AST/ASTConsumer.h"
#include "clang/AST/CFG.h"
#include "clang/Analysis/Analyses/LiveVariables.h"
+#include "clang/Analysis/Analyses/GRConstants.h"
#include "clang/Analysis/LocalCheckers.h"
#include "llvm/Support/Streams.h"
#include <fstream>
@@ -562,22 +563,21 @@
}
//===----------------------------------------------------------------------===//
-// GRConstProp - Perform intra-procedural, path-sensitive constant propagation.
+// GRConstants - Perform intra-procedural, path-sensitive constant propagation.
namespace {
- class GRConstPropVisitor : public CFGVisitor {
+ class GRConstantsVisitor : public CFGVisitor {
public:
virtual void Initialize(ASTContext &Context) {}
virtual void VisitCFG(CFG& C) {
- // FIXME: Implement.
- assert (false && "Not yet implemented.");
+ RunGRConstants(C);
}
};
} // end anonymous namespace
-ASTConsumer *clang::CreateGRConstProp() {
- return new GRConstPropVisitor();
+ASTConsumer *clang::CreateGRConstants() {
+ return new GRConstantsVisitor();
}
//===----------------------------------------------------------------------===//