summaryrefslogtreecommitdiffstats
path: root/clang
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2008-02-22 20:13:09 +0000
committerTed Kremenek <kremenek@apple.com>2008-02-22 20:13:09 +0000
commitc77f34daadde96d909f8cec6cc01c40859a7f09a (patch)
treee8819f5843e0e829b937ea13e5a021e59cbca9c7 /clang
parent88329bf0ea6dab94f2496f8304884604b7ee4056 (diff)
downloadbcm5719-llvm-c77f34daadde96d909f8cec6cc01c40859a7f09a.tar.gz
bcm5719-llvm-c77f34daadde96d909f8cec6cc01c40859a7f09a.zip
Modified clang driver option -dump-live-variables to (optionally) use the
--analyze-function option to analyze specific functions. llvm-svn: 47498
Diffstat (limited to 'clang')
-rw-r--r--clang/Driver/ASTConsumers.cpp6
-rw-r--r--clang/Driver/ASTConsumers.h2
-rw-r--r--clang/Driver/clang.cpp2
3 files changed, 6 insertions, 4 deletions
diff --git a/clang/Driver/ASTConsumers.cpp b/clang/Driver/ASTConsumers.cpp
index 316bcd4c7bd..fd7768cacc7 100644
--- a/clang/Driver/ASTConsumers.cpp
+++ b/clang/Driver/ASTConsumers.cpp
@@ -516,6 +516,8 @@ namespace {
class LivenessVisitor : public CFGVisitor {
SourceManager *SM;
public:
+ LivenessVisitor(const std::string& fname) : CFGVisitor(fname) {}
+
virtual void Initialize(ASTContext &Context) {
SM = &Context.getSourceManager();
}
@@ -528,8 +530,8 @@ namespace {
};
} // end anonymous namespace
-ASTConsumer *clang::CreateLiveVarAnalyzer() {
- return new LivenessVisitor();
+ASTConsumer *clang::CreateLiveVarAnalyzer(const std::string& fname) {
+ return new LivenessVisitor(fname);
}
//===----------------------------------------------------------------------===//
diff --git a/clang/Driver/ASTConsumers.h b/clang/Driver/ASTConsumers.h
index a0745cd792b..85940c86f6f 100644
--- a/clang/Driver/ASTConsumers.h
+++ b/clang/Driver/ASTConsumers.h
@@ -36,7 +36,7 @@ ASTConsumer *CreateASTViewer();
ASTConsumer *CreateCFGDumper(bool ViewGraphs, const std::string& FName);
-ASTConsumer *CreateLiveVarAnalyzer();
+ASTConsumer *CreateLiveVarAnalyzer(const std::string& fname);
ASTConsumer *CreateDeadStoreChecker(Diagnostic &Diags);
diff --git a/clang/Driver/clang.cpp b/clang/Driver/clang.cpp
index 15384c5f1c2..89e0bad4d0f 100644
--- a/clang/Driver/clang.cpp
+++ b/clang/Driver/clang.cpp
@@ -982,7 +982,7 @@ static ASTConsumer* CreateASTConsumer(const std::string& InFile,
AnalyzeSpecificFunction);
case AnalysisLiveVariables:
- return CreateLiveVarAnalyzer();
+ return CreateLiveVarAnalyzer(AnalyzeSpecificFunction);
case WarnDeadStores:
return CreateDeadStoreChecker(Diag);
OpenPOWER on IntegriCloud