clang 20.0.0git
|
Classes | |
struct | CachedFileContents |
Contents and directive tokens of a cached file entry. More... | |
class | CachedFileSystemEntry |
An in-memory representation of a file system entity that is of interest to the dependency scanning filesystem. More... | |
class | CallbackActionController |
A simple dependency action controller that uses a callback. More... | |
struct | Command |
A command-line tool invocation that is part of building a TU. More... | |
class | DependencyActionController |
Dependency scanner callbacks that are used during scanning to influence the behaviour of the scan - for example, to customize the scanned invocations. More... | |
class | DependencyConsumer |
class | DependencyScanningFilesystemLocalCache |
This class is a local cache, that caches the 'stat' and 'open' calls to the underlying real file system. More... | |
class | DependencyScanningFilesystemSharedCache |
This class is a shared cache, that caches the 'stat' and 'open' calls to the underlying real file system, and the scanned preprocessor directives of files. More... | |
class | DependencyScanningService |
The dependency scanning service contains shared configuration and state that is used by the individual dependency scanning workers. More... | |
class | DependencyScanningTool |
The high-level implementation of the dependency discovery tool that runs on an individual worker thread. More... | |
class | DependencyScanningWorker |
An individual dependency scanning worker that is able to run on its own thread. More... | |
class | DependencyScanningWorkerFilesystem |
A virtual file system optimized for the dependency discovery. More... | |
class | EntryRef |
Reference to a CachedFileSystemEntry. More... | |
class | FullDependencyConsumer |
class | ModuleDepCollector |
Collects modular and non-modular dependencies of the main file by attaching ModuleDepCollectorPP to the preprocessor. More... | |
class | ModuleDepCollectorPP |
Callback that records textual includes and direct modular includes/imports during preprocessing. More... | |
struct | ModuleDeps |
struct | ModuleID |
This is used to identify a specific module. More... | |
struct | P1689ModuleInfo |
P1689ModuleInfo - Represents the needed information of standard C++20 modules for P1689 format. More... | |
struct | P1689Rule |
struct | PrebuiltModuleDep |
Modular dependency that has already been built prior to the dependency scan. More... | |
struct | TranslationUnitDeps |
The full dependencies and module graph for a specific input. More... | |
Typedefs | |
using | DependencyDirectivesTy = SmallVector< dependency_directives_scan::Directive, 20 > |
using | CachedRealPath = llvm::ErrorOr< std::string > |
using | LookupModuleOutputCallback = llvm::function_ref< std::string(const ModuleID &, ModuleOutputKind)> |
A callback to lookup module outputs for "-fmodule-file=", "-o" etc. | |
using | ModuleDepsGraph = std::vector< ModuleDeps > |
Graph of modular dependencies. | |
using | PrebuiltModuleVFSMapT = llvm::StringMap< llvm::StringSet<> > |
Enumerations | |
enum class | ScanningMode { CanonicalPreprocessing , DependencyDirectivesScan } |
The mode in which the dependency scanner will operate to find the dependencies. More... | |
enum class | ScanningOutputFormat { Make , Full , P1689 } |
The format that is output by the dependency scanner. More... | |
enum class | ScanningOptimizations { None = 0 , HeaderSearch = 1 , SystemWarnings = 2 , VFS = 4 , Macros = 8 , DSS_LAST_BITMASK_ENUM =(Macros) , Default = All } |
enum class | ModuleOutputKind { ModuleFile , DependencyFile , DependencyTargets , DiagnosticSerializationFile } |
An output from a module compilation, such as the path of the module file. More... | |
Functions | |
void | resetBenignCodeGenOptions (frontend::ActionKind ProgramAction, const LangOptions &LangOpts, CodeGenOptions &CGOpts) |
Resets codegen options that don't affect modules/PCH. | |
using clang::tooling::dependencies::CachedRealPath = typedef llvm::ErrorOr<std::string> |
Definition at line 145 of file DependencyScanningFilesystem.h.
using clang::tooling::dependencies::DependencyDirectivesTy = typedef SmallVector<dependency_directives_scan::Directive, 20> |
Definition at line 26 of file DependencyScanningFilesystem.h.
using clang::tooling::dependencies::LookupModuleOutputCallback = typedef llvm::function_ref<std::string(const ModuleID &, ModuleOutputKind)> |
A callback to lookup module outputs for "-fmodule-file=", "-o" etc.
Definition at line 27 of file DependencyScanningTool.h.
using clang::tooling::dependencies::ModuleDepsGraph = typedef std::vector<ModuleDeps> |
Graph of modular dependencies.
Definition at line 31 of file DependencyScanningTool.h.
using clang::tooling::dependencies::PrebuiltModuleVFSMapT = typedef llvm::StringMap<llvm::StringSet<> > |
Definition at line 165 of file ModuleDepCollector.h.
|
strong |
An output from a module compilation, such as the path of the module file.
Definition at line 98 of file ModuleDepCollector.h.
|
strong |
The mode in which the dependency scanner will operate to find the dependencies.
Definition at line 21 of file DependencyScanningService.h.
|
strong |
Enumerator | |
---|---|
None | |
HeaderSearch | Remove unused header search paths including header maps. |
SystemWarnings | Remove warnings from system modules. |
VFS | Remove unused -ivfsoverlay arguments. |
Macros | Canonicalize -D and -U options. |
DSS_LAST_BITMASK_ENUM | |
Default |
Definition at line 51 of file DependencyScanningService.h.
|
strong |
The format that is output by the dependency scanner.
Definition at line 33 of file DependencyScanningService.h.
void clang::tooling::dependencies::resetBenignCodeGenOptions | ( | frontend::ActionKind | ProgramAction, |
const LangOptions & | LangOpts, | ||
CodeGenOptions & | CGOpts | ||
) |
Resets codegen options that don't affect modules/PCH.
Definition at line 167 of file ModuleDepCollector.cpp.
References clang::CodeGenOptions::CoverageCompilationDir, clang::CodeGenOptions::CoverageDataFile, clang::CodeGenOptions::CoverageNotesFile, clang::CodeGenOptions::DebugCompilationDir, clang::CodeGenOptions::DwarfDebugFlags, clang::frontend::GenerateModule, clang::frontend::GeneratePCH, clang::CodeGenOptions::MainFileName, clang::CodeGenOptions::ProfileInstrumentUsePath, clang::CodeGenOptions::ProfileRemappingFile, and clang::CodeGenOptions::SampleProfileFile.
Referenced by clang::tooling::dependencies::ModuleDepCollector::applyDiscoveredDependencies(), and makeCommonInvocationForModuleBuild().