diff options
author | Ilya Biryukov <ibiryukov@google.com> | 2018-03-01 14:54:16 +0000 |
---|---|---|
committer | Ilya Biryukov <ibiryukov@google.com> | 2018-03-01 14:54:16 +0000 |
commit | 8b9b3bd07c5046ae3010516d84d3217934ad10d5 (patch) | |
tree | b352ac923482fa800709b5291976798ace5613b5 /clang/lib/StaticAnalyzer/Core/AnalyzerOptions.cpp | |
parent | 1bab70109b9fa259f928fe30a8ad153db8f4ecbe (diff) | |
download | bcm5719-llvm-8b9b3bd07c5046ae3010516d84d3217934ad10d5.tar.gz bcm5719-llvm-8b9b3bd07c5046ae3010516d84d3217934ad10d5.zip |
Resubmit [analyzer] Support for naive cross translation unit analysis
Originally submitted as r326323 and r326324.
Reverted in r326432.
Reverting the commit was a mistake.
The breakage was due to invalid build files in our internal buildsystem,
CMakeLists did not have any cyclic dependencies.
llvm-svn: 326439
Diffstat (limited to 'clang/lib/StaticAnalyzer/Core/AnalyzerOptions.cpp')
-rw-r--r-- | clang/lib/StaticAnalyzer/Core/AnalyzerOptions.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/clang/lib/StaticAnalyzer/Core/AnalyzerOptions.cpp b/clang/lib/StaticAnalyzer/Core/AnalyzerOptions.cpp index dcc5de42d5c..8063e11c218 100644 --- a/clang/lib/StaticAnalyzer/Core/AnalyzerOptions.cpp +++ b/clang/lib/StaticAnalyzer/Core/AnalyzerOptions.cpp @@ -433,3 +433,26 @@ bool AnalyzerOptions::shouldDisplayNotesAsEvents() { getBooleanOption("notes-as-events", /*Default=*/false); return DisplayNotesAsEvents.getValue(); } + +StringRef AnalyzerOptions::getCTUDir() { + if (!CTUDir.hasValue()) { + CTUDir = getOptionAsString("ctu-dir", ""); + if (!llvm::sys::fs::is_directory(*CTUDir)) + CTUDir = ""; + } + return CTUDir.getValue(); +} + +bool AnalyzerOptions::naiveCTUEnabled() { + if (!NaiveCTU.hasValue()) { + NaiveCTU = getBooleanOption("experimental-enable-naive-ctu-analysis", + /*Default=*/false); + } + return NaiveCTU.getValue(); +} + +StringRef AnalyzerOptions::getCTUIndexName() { + if (!CTUIndexName.hasValue()) + CTUIndexName = getOptionAsString("ctu-index-name", "externalFnMap.txt"); + return CTUIndexName.getValue(); +} |