clang 20.0.0git
|
#include "clang/Tooling/DependencyScanning/ModuleDepCollector.h"
#include "clang/Basic/MakeSupport.h"
#include "clang/Frontend/CompilerInstance.h"
#include "clang/Lex/Preprocessor.h"
#include "clang/Tooling/DependencyScanning/DependencyScanningWorker.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/Support/BLAKE3.h"
#include "llvm/Support/StringSaver.h"
#include <optional>
Go to the source code of this file.
Functions | |
static void | optimizeHeaderSearchOpts (HeaderSearchOptions &Opts, ASTReader &Reader, const serialization::ModuleFile &MF, const PrebuiltModuleVFSMapT &PrebuiltModuleVFSMap, ScanningOptimizations OptimizeArgs) |
static void | optimizeDiagnosticOpts (DiagnosticOptions &Opts, bool IsSystemModule) |
static std::vector< std::string > | splitString (std::string S, char Separator) |
static CowCompilerInvocation | makeCommonInvocationForModuleBuild (CompilerInvocation CI) |
static bool | needsModules (FrontendInputFile FIF) |
static std::string | getModuleContextHash (const ModuleDeps &MD, const CowCompilerInvocation &CI, bool EagerLoadModules, llvm::vfs::FileSystem &VFS) |
static void | forEachSubmoduleSorted (const Module *M, llvm::function_ref< void(const Module *)> F) |
static StringRef | makeAbsoluteAndPreferred (CompilerInstance &CI, StringRef Path, SmallVectorImpl< char > &Storage) |
|
static |
Definition at line 656 of file ModuleDepCollector.cpp.
References clang::Module::Name, and clang::Module::submodules().
|
static |
Definition at line 388 of file ModuleDepCollector.cpp.
References clang::tooling::dependencies::ModuleDeps::ClangModuleDeps, clang::CompilerInvocationBase::generateCC1CommandLine(), clang::getClangFullRepositoryVersion(), toString(), clang::serialization::VERSION_MAJOR, clang::serialization::VERSION_MINOR, and clang::tooling::dependencies::VFS.
|
static |
Definition at line 769 of file ModuleDepCollector.cpp.
References clang::CompilerInstance::getFileManager(), clang::FileManager::makeAbsolutePath(), and Path.
|
static |
Definition at line 178 of file ModuleDepCollector.cpp.
References clang::FrontendOptions::ARCMT_None, clang::FrontendOptions::ARCMTAction, clang::CompilerInvocation::clearImplicitModuleBuildOptions(), clang::DiagnosticOptions::DiagnosticSerializationFile, clang::frontend::GenerateModule, clang::CompilerInvocation::getCodeGenOpts(), clang::CompilerInvocation::getDependencyOutputOpts(), clang::CompilerInvocation::getDiagnosticOpts(), clang::CompilerInvocation::getFrontendOpts(), clang::CompilerInvocation::getHeaderSearchOpts(), clang::CompilerInvocation::getLangOpts(), clang::CompilerInvocation::getPreprocessorOpts(), clang::FrontendOptions::Inputs, clang::FrontendOptions::LLVMArgs, clang::PreprocessorOptions::Macros, clang::LangOptions::ModuleName, clang::HeaderSearchOptions::ModulesIgnoreMacros, clang::HeaderSearchOptions::ModulesPruneNonAffectingModuleMaps, clang::FrontendOptions::MTMigrateDir, clang::FrontendOptions::ObjCMT_None, clang::FrontendOptions::ObjCMTAction, clang::DependencyOutputOptions::OutputFile, clang::FrontendOptions::OutputFile, clang::FrontendOptions::ProgramAction, clang::tooling::dependencies::resetBenignCodeGenOptions(), clang::CompilerInvocation::resetNonModularOptions(), and clang::DependencyOutputOptions::Targets.
|
static |
Definition at line 347 of file ModuleDepCollector.cpp.
References clang::Asm, clang::FrontendInputFile::getKind(), clang::InputKind::getLanguage(), clang::LLVM_IR, and clang::Unknown.
Referenced by clang::tooling::dependencies::ModuleDepCollector::applyDiscoveredDependencies().
|
static |
Definition at line 100 of file ModuleDepCollector.cpp.
References clang::DiagnosticOptions::Remarks, clang::DiagnosticOptions::UndefPrefixes, and clang::DiagnosticOptions::Warnings.
|
static |
Definition at line 33 of file ModuleDepCollector.cpp.
References any(), E, clang::serialization::ModuleFile::FileName, clang::tooling::dependencies::HeaderSearch, clang::tooling::Import, clang::serialization::ModuleFile::Imports, clang::serialization::ModuleFile::Kind, clang::serialization::MK_ImplicitModule, clang::serialization::ModuleFile::SearchPathUsage, clang::HeaderSearchOptions::UserEntries, clang::tooling::dependencies::VFS, clang::HeaderSearchOptions::VFSOverlayFiles, clang::serialization::ModuleFile::VFSUsage, and Visited.
|
static |
Definition at line 122 of file ModuleDepCollector.cpp.
References clang::Result.