diff options
author | Ted Kremenek <kremenek@apple.com> | 2008-04-10 22:16:52 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2008-04-10 22:16:52 +0000 |
commit | 4a78c3ae11c4e3002bbed268b4e62d19e53f4df5 (patch) | |
tree | a35cfcc7a6b92ec26908ef2b564ab14d96e89f6e /clang/lib/Analysis/GRSimpleVals.cpp | |
parent | 53336d80557b81c54793085280c026dd218f0c75 (diff) | |
download | bcm5719-llvm-4a78c3ae11c4e3002bbed268b4e62d19e53f4df5.tar.gz bcm5719-llvm-4a78c3ae11c4e3002bbed268b4e62d19e53f4df5.zip |
Refactored all logic to run the GRSimpleVals and CFRef checker into a common
code path in the clang driver.
Renamed options --grsimple to -checker-simple and -check-cfref to -checker-cfref.
llvm-svn: 49500
Diffstat (limited to 'clang/lib/Analysis/GRSimpleVals.cpp')
-rw-r--r-- | clang/lib/Analysis/GRSimpleVals.cpp | 31 |
1 files changed, 3 insertions, 28 deletions
diff --git a/clang/lib/Analysis/GRSimpleVals.cpp b/clang/lib/Analysis/GRSimpleVals.cpp index 960476dff02..c350ab9752a 100644 --- a/clang/lib/Analysis/GRSimpleVals.cpp +++ b/clang/lib/Analysis/GRSimpleVals.cpp @@ -19,6 +19,7 @@ #include "clang/Analysis/PathDiagnostic.h" #include "clang/Analysis/PathSensitive/ValueState.h" #include "clang/Analysis/PathSensitive/BugReporter.h" +#include "clang/Analysis/LocalCheckers.h" #include "llvm/Support/Compiler.h" #include <sstream> @@ -310,36 +311,10 @@ void GRSimpleVals::RegisterChecks(GRExprEngine& Eng) { } //===----------------------------------------------------------------------===// -// Analysis Driver. +// Transfer Function creation for External clients. //===----------------------------------------------------------------------===// -namespace clang { - -unsigned RunGRSimpleVals(CFG& cfg, Decl& CD, ASTContext& Ctx, - Diagnostic& Diag, PathDiagnosticClient* PD, - bool Visualize, bool TrimGraph) { - - // Construct the analysis engine. - GRExprEngine Eng(cfg, CD, Ctx); - - // Set base transfer functions. - GRSimpleVals GRSV; - Eng.setTransferFunctions(GRSV); - - // Execute the worklist algorithm. - Eng.ExecuteWorkList(); - - // Display warnings. - Eng.EmitWarnings(Diag, PD); - -#ifndef NDEBUG - if (Visualize) Eng.ViewGraph(TrimGraph); -#endif - - return Eng.getGraph().size(); -} - -} // end clang namespace +GRTransferFuncs* clang::MakeGRSimpleValsTF() { return new GRSimpleVals(); } //===----------------------------------------------------------------------===// // Transfer function for Casts. |