@@ -39,10 +39,9 @@ using llvm::BCVBR;
39
39
40
40
// / Every .moddepcache file begins with these 4 bytes, for easy identification.
41
41
const unsigned char MODULE_DEPENDENCY_CACHE_FORMAT_SIGNATURE[] = {' I' , ' M' , ' D' ,' C' };
42
- const unsigned MODULE_DEPENDENCY_CACHE_FORMAT_VERSION_MAJOR =
43
- 7 ; // isSystem
42
+ const unsigned MODULE_DEPENDENCY_CACHE_FORMAT_VERSION_MAJOR = 8 ;
44
43
// / Increment this on every change.
45
- const unsigned MODULE_DEPENDENCY_CACHE_FORMAT_VERSION_MINOR = 1 ;
44
+ const unsigned MODULE_DEPENDENCY_CACHE_FORMAT_VERSION_MINOR = 0 ;
46
45
47
46
// / Various identifiers in this format will rely on having their strings mapped
48
47
// / using this ID.
@@ -74,6 +73,7 @@ using ContextHashIDField = IdentifierIDField;
74
73
using ModuleCacheKeyIDField = IdentifierIDField;
75
74
using ImportArrayIDField = IdentifierIDField;
76
75
using LinkLibrariesArrayIDField = IdentifierIDField;
76
+ using MacroDependenciesArrayIDField = IdentifierIDField;
77
77
using FlagIDArrayIDField = IdentifierIDField;
78
78
using DependencyIDArrayIDField = IdentifierIDField;
79
79
using AuxiliaryFilesArrayIDField = IdentifierIDField;
95
95
MODULE_NODE,
96
96
LINK_LIBRARY_NODE,
97
97
LINK_LIBRARY_ARRAY_NODE,
98
+ MACRO_DEPENDENCY_NODE,
99
+ MACRO_DEPENDENCY_ARRAY_NODE,
98
100
SOURCE_LOCATION_NODE,
99
101
IMPORT_STATEMENT_NODE,
100
102
SWIFT_INTERFACE_MODULE_DETAILS_NODE,
@@ -133,23 +135,37 @@ using IdentifierNodeLayout = BCRecordLayout<IDENTIFIER_NODE, BCBlob>;
133
135
using IdentifierArrayLayout =
134
136
BCRecordLayout<IDENTIFIER_ARRAY_NODE, IdentifierIDArryField>;
135
137
136
- using LinkLibraryArrayLayout =
137
- BCRecordLayout<LINK_LIBRARY_ARRAY_NODE, IdentifierIDArryField>;
138
-
138
+ // ACTODO: Comment
139
139
using LinkLibraryLayout =
140
140
BCRecordLayout<LINK_LIBRARY_NODE, // ID
141
141
IdentifierIDField, // libraryName
142
142
IsFrameworkField, // isFramework
143
143
IsForceLoadField // forceLoad
144
144
>;
145
+ // ACTODO: Comment
146
+ using LinkLibraryArrayLayout =
147
+ BCRecordLayout<LINK_LIBRARY_ARRAY_NODE, IdentifierIDArryField>;
148
+
149
+ // ACTODO: Comment
150
+ using MacroDependencyLayout =
151
+ BCRecordLayout<MACRO_DEPENDENCY_NODE, // ID
152
+ IdentifierIDField, // macroModuleName
153
+ IdentifierIDField, // libraryPath
154
+ IdentifierIDField // executablePath
155
+ >;
156
+ // ACTODO: Comment
157
+ using MacroDependencyArrayLayout =
158
+ BCRecordLayout<MACRO_DEPENDENCY_ARRAY_NODE, IdentifierIDArryField>;
145
159
160
+ // ACTODO: Comment
146
161
using SourceLocationLayout =
147
162
BCRecordLayout<LINK_LIBRARY_NODE, // ID
148
163
IdentifierIDField, // bufferIdentifier
149
164
LineNumberField, // lineNumber
150
165
ColumnNumberField // columnNumber
151
166
>;
152
167
168
+ // ACTODO: Comment
153
169
using ImportStatementLayout =
154
170
BCRecordLayout<LINK_LIBRARY_NODE, // ID
155
171
IdentifierIDField, // importIdentifier
@@ -169,13 +185,13 @@ using ModuleInfoLayout =
169
185
ImportArrayIDField, // moduleImports
170
186
ImportArrayIDField, // optionalModuleImports
171
187
LinkLibrariesArrayIDField, // linkLibraries
188
+ MacroDependenciesArrayIDField, // macroDependencies
172
189
DependencyIDArrayIDField, // importedSwiftModules
173
190
DependencyIDArrayIDField, // importedClangModules
174
191
DependencyIDArrayIDField, // crossImportOverlayModules
175
192
DependencyIDArrayIDField, // swiftOverlayDependencies
176
193
ModuleCacheKeyIDField, // moduleCacheKey
177
194
AuxiliaryFilesArrayIDField // auxiliaryFiles
178
- // ACTODO: MacroDependenciesArrayIDField, // macroDependencies
179
195
>;
180
196
181
197
using SwiftInterfaceModuleDetailsLayout =
0 commit comments