@@ -73,6 +73,7 @@ using FileIDArrayIDField = IdentifierIDField;
73
73
using ContextHashIDField = IdentifierIDField;
74
74
using ModuleCacheKeyIDField = IdentifierIDField;
75
75
using ImportArrayIDField = IdentifierIDField;
76
+ using LinkLibrariesArrayIDField = IdentifierIDField;
76
77
using FlagIDArrayIDField = IdentifierIDField;
77
78
using DependencyIDArrayIDField = IdentifierIDField;
78
79
using AuxiliaryFilesArrayIDField = IdentifierIDField;
@@ -85,12 +86,15 @@ const unsigned GRAPH_BLOCK_ID = llvm::bitc::FIRST_APPLICATION_BLOCKID;
85
86
// / zero or more IDENTIFIER records that contain various strings seen in the graph
86
87
// / (e.g. file names or compiler flags), followed by zero or more IDENTIFIER_ARRAY records
87
88
// / 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
+ // /
88
91
// / followed by zero or more MODULE_NODE, *_DETAILS_NODE pairs of records.
89
92
namespace graph_block {
90
93
enum {
91
94
METADATA = 1 ,
92
95
MODULE_NODE,
93
96
LINK_LIBRARY_NODE,
97
+ LINK_LIBRARY_ARRAY_NODE,
94
98
SOURCE_LOCATION_NODE,
95
99
IMPORT_STATEMENT_NODE,
96
100
SWIFT_INTERFACE_MODULE_DETAILS_NODE,
@@ -129,6 +133,9 @@ using IdentifierNodeLayout = BCRecordLayout<IDENTIFIER_NODE, BCBlob>;
129
133
using IdentifierArrayLayout =
130
134
BCRecordLayout<IDENTIFIER_ARRAY_NODE, IdentifierIDArryField>;
131
135
136
+ using LinkLibraryArrayLayout =
137
+ BCRecordLayout<LINK_LIBRARY_ARRAY_NODE, IdentifierIDArryField>;
138
+
132
139
using LinkLibraryLayout =
133
140
BCRecordLayout<LINK_LIBRARY_NODE, // ID
134
141
IdentifierIDField, // libraryName
@@ -157,12 +164,11 @@ using ImportStatementLayout =
157
164
// - SwiftPlaceholderModuleDetails
158
165
// - ClangModuleDetails
159
166
using 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
166
172
DependencyIDArrayIDField, // importedSwiftModules
167
173
DependencyIDArrayIDField, // importedClangModules
168
174
DependencyIDArrayIDField, // crossImportOverlayModules
@@ -211,6 +217,7 @@ using SwiftBinaryModuleDetailsLayout =
211
217
FileIDField, // moduleDocPath
212
218
FileIDField, // moduleSourceInfoPath
213
219
FileIDField, // headerImport
220
+ FileIDField, // definingInterfacePath
214
221
IdentifierIDField, // headerModuleDependencies
215
222
FileIDArrayIDField, // headerSourceFiles
216
223
IsFrameworkField, // isFramework
0 commit comments