[Dependency Scanning] Attempt to lookup optional transitive dependencies of binary module dependencies. Instead of simply pretending they do not exist, do a best-effort lookup

This commit is contained in:
Artem Chikin
2023-09-13 13:57:20 -07:00
parent c2ba21e334
commit 52da0b02fa
7 changed files with 74 additions and 10 deletions

View File

@@ -39,7 +39,7 @@ using llvm::BCVBR;
/// Every .moddepcache file begins with these 4 bytes, for easy identification.
const unsigned char MODULE_DEPENDENCY_CACHE_FORMAT_SIGNATURE[] = {'I', 'M', 'D','C'};
const unsigned MODULE_DEPENDENCY_CACHE_FORMAT_VERSION_MAJOR = 4;
const unsigned MODULE_DEPENDENCY_CACHE_FORMAT_VERSION_MAJOR = 5; // optionalModuleImports
/// Increment this on every change.
const unsigned MODULE_DEPENDENCY_CACHE_FORMAT_VERSION_MINOR = 1;
@@ -124,6 +124,7 @@ using ModuleInfoLayout =
IdentifierIDField, // moduleName
ContextHashIDField, // contextHash
ImportArrayIDField, // moduleImports
ImportArrayIDField, // optionalModuleImports
DependencyIDArrayIDField // resolvedDirectModuleDependencies
>;