@@ -73,6 +73,7 @@ using FileIDArrayIDField = IdentifierIDField;
7373using ContextHashIDField = IdentifierIDField;
7474using ModuleCacheKeyIDField = IdentifierIDField;
7575using ImportArrayIDField = IdentifierIDField;
76+ using LinkLibrariesArrayIDField = IdentifierIDField;
7677using FlagIDArrayIDField = IdentifierIDField;
7778using DependencyIDArrayIDField = IdentifierIDField;
7879using AuxiliaryFilesArrayIDField = IdentifierIDField;
@@ -85,12 +86,15 @@ const unsigned GRAPH_BLOCK_ID = llvm::bitc::FIRST_APPLICATION_BLOCKID;
8586// / zero or more IDENTIFIER records that contain various strings seen in the graph
8687// / (e.g. file names or compiler flags), followed by zero or more IDENTIFIER_ARRAY records
8788// / which are arrays of identifiers seen in the graph (e.g. list of source files or list of compile flags),
89+ // / followed by zero or more LINK_LIBRARY_NODE records along with associated
90+ // /
8891// / followed by zero or more MODULE_NODE, *_DETAILS_NODE pairs of records.
8992namespace graph_block {
9093enum {
9194 METADATA = 1 ,
9295 MODULE_NODE,
9396 LINK_LIBRARY_NODE,
97+ LINK_LIBRARY_ARRAY_NODE,
9498 SOURCE_LOCATION_NODE,
9599 IMPORT_STATEMENT_NODE,
96100 SWIFT_INTERFACE_MODULE_DETAILS_NODE,
@@ -129,6 +133,9 @@ using IdentifierNodeLayout = BCRecordLayout<IDENTIFIER_NODE, BCBlob>;
129133using IdentifierArrayLayout =
130134 BCRecordLayout<IDENTIFIER_ARRAY_NODE, IdentifierIDArryField>;
131135
136+ using LinkLibraryArrayLayout =
137+ BCRecordLayout<LINK_LIBRARY_ARRAY_NODE, IdentifierIDArryField>;
138+
132139using LinkLibraryLayout =
133140 BCRecordLayout<LINK_LIBRARY_NODE, // ID
134141 IdentifierIDField, // libraryName
@@ -157,12 +164,11 @@ using ImportStatementLayout =
157164// - SwiftPlaceholderModuleDetails
158165// - ClangModuleDetails
159166using ModuleInfoLayout =
160- BCRecordLayout<MODULE_NODE, // ID
161- IdentifierIDField, // moduleName
162- ContextHashIDField, // contextHash
163- ImportArrayIDField, // moduleImports
164- ImportArrayIDField, // optionalModuleImports
165- // ACTODO: LinkLibrariesArrayIDField, // linkLibraries
167+ BCRecordLayout<MODULE_NODE, // ID
168+ IdentifierIDField, // moduleName
169+ ImportArrayIDField, // moduleImports
170+ ImportArrayIDField, // optionalModuleImports
171+ LinkLibrariesArrayIDField, // linkLibraries
166172 DependencyIDArrayIDField, // importedSwiftModules
167173 DependencyIDArrayIDField, // importedClangModules
168174 DependencyIDArrayIDField, // crossImportOverlayModules
@@ -211,6 +217,7 @@ using SwiftBinaryModuleDetailsLayout =
211217 FileIDField, // moduleDocPath
212218 FileIDField, // moduleSourceInfoPath
213219 FileIDField, // headerImport
220+ FileIDField, // definingInterfacePath
214221 IdentifierIDField, // headerModuleDependencies
215222 FileIDArrayIDField, // headerSourceFiles
216223 IsFrameworkField, // isFramework
0 commit comments