mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
[Serialization] Minor ModuleFile/ModuleFileSharedCore improvements
* Add properties to ModuleFile which holds information from the control block. * 'ExtendedValidationInfo' parameter for 'ModuleFileSharedCore::load()' cannot be 'nullptr'. Make it non-defaulted Rvalue reference.
This commit is contained in:
@@ -1088,7 +1088,7 @@ ModuleFileSharedCore::ModuleFileSharedCore(
|
||||
std::unique_ptr<llvm::MemoryBuffer> moduleDocInputBuffer,
|
||||
std::unique_ptr<llvm::MemoryBuffer> moduleSourceInfoInputBuffer,
|
||||
bool isFramework, serialization::ValidationInfo &info,
|
||||
serialization::ExtendedValidationInfo *extInfo)
|
||||
serialization::ExtendedValidationInfo &extInfo)
|
||||
: ModuleInputBuffer(std::move(moduleInputBuffer)),
|
||||
ModuleDocInputBuffer(std::move(moduleDocInputBuffer)),
|
||||
ModuleSourceInfoInputBuffer(std::move(moduleSourceInfoInputBuffer)) {
|
||||
@@ -1137,7 +1137,7 @@ ModuleFileSharedCore::ModuleFileSharedCore(
|
||||
info = validateControlBlock(cursor, scratch,
|
||||
{SWIFTMODULE_VERSION_MAJOR,
|
||||
SWIFTMODULE_VERSION_MINOR},
|
||||
extInfo);
|
||||
&extInfo);
|
||||
if (info.status != Status::Valid) {
|
||||
error(info.status);
|
||||
return;
|
||||
@@ -1145,7 +1145,11 @@ ModuleFileSharedCore::ModuleFileSharedCore(
|
||||
Name = info.name;
|
||||
TargetTriple = info.targetTriple;
|
||||
CompatibilityVersion = info.compatibilityVersion;
|
||||
IsSIB = extInfo->isSIB();
|
||||
Bits.ArePrivateImportsEnabled = extInfo.arePrivateImportsEnabled();
|
||||
Bits.IsSIB = extInfo.isSIB();
|
||||
Bits.IsTestable = extInfo.isTestable();
|
||||
Bits.ResilienceStrategy = unsigned(extInfo.getResilienceStrategy());
|
||||
Bits.IsImplicitDynamicEnabled = extInfo.isImplicitDynamicEnabled();
|
||||
MiscVersion = info.miscVersion;
|
||||
|
||||
hasValidControlBlock = true;
|
||||
|
||||
Reference in New Issue
Block a user