diff --git a/.gitignore b/.gitignore index 2aaf8ce5f8..2695fef470 100644 --- a/.gitignore +++ b/.gitignore @@ -33,6 +33,8 @@ log/* # MS VS Code .vscode/ +.devcontainer/ + # Eclipse .cproject .project diff --git a/include/phasar/ControlFlow/CallGraphAnalysisType.h b/include/phasar/ControlFlow/CallGraphAnalysisType.h index af5ed728b0..9ea16c4cf0 100644 --- a/include/phasar/ControlFlow/CallGraphAnalysisType.h +++ b/include/phasar/ControlFlow/CallGraphAnalysisType.h @@ -22,6 +22,12 @@ enum class CallGraphAnalysisType { Invalid }; +[[nodiscard]] constexpr bool +needsAliasInfo(CallGraphAnalysisType CGTy) noexcept { + return CGTy == CallGraphAnalysisType::OTF || + CGTy == CallGraphAnalysisType::VTA; +} + std::string toString(CallGraphAnalysisType CGA); CallGraphAnalysisType toCallGraphAnalysisType(llvm::StringRef S); diff --git a/lib/PhasarLLVM/HelperAnalyses.cpp b/lib/PhasarLLVM/HelperAnalyses.cpp index 721a313db3..355d77cdc8 100644 --- a/lib/PhasarLLVM/HelperAnalyses.cpp +++ b/lib/PhasarLLVM/HelperAnalyses.cpp @@ -94,8 +94,8 @@ LLVMBasedICFG &HelperAnalyses::getICFG() { } else { ICF = std::make_unique( &getProjectIRDB(), CGTy, std::move(EntryPoints), &getTypeHierarchy(), - CGTy == CallGraphAnalysisType::OTF ? &getAliasInfo() : nullptr, - SoundnessLevel, AutoGlobalSupport); + needsAliasInfo(CGTy) ? &getAliasInfo() : nullptr, SoundnessLevel, + AutoGlobalSupport); } }