mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
During Package CMO, SIL cloning happens during which
SILOptions::EnableSerializePackage info is lost. SILVerifier needs this info to determine whether resilience can be bypassed for decls serialized in a resiliently built module when Package CMO optimization enabled. This PR adds SerializePackageEnabled bit to Module format and uses that in SILVerifier. Resolves rdar://126157356
This commit is contained in:
@@ -141,6 +141,7 @@ class ExtendedValidationInfo {
|
||||
unsigned IsConcurrencyChecked : 1;
|
||||
unsigned HasCxxInteroperability : 1;
|
||||
unsigned AllowNonResilientAccess: 1;
|
||||
unsigned SerializePackageEnabled: 1;
|
||||
} Bits;
|
||||
public:
|
||||
ExtendedValidationInfo() : Bits() {}
|
||||
@@ -209,6 +210,10 @@ public:
|
||||
void setAllowNonResilientAccess(bool val) {
|
||||
Bits.AllowNonResilientAccess = val;
|
||||
}
|
||||
bool serializePackageEnabled() const { return Bits.SerializePackageEnabled; }
|
||||
void setSerializePackageEnabled(bool val) {
|
||||
Bits.SerializePackageEnabled = val;
|
||||
}
|
||||
bool isAllowModuleWithCompilerErrorsEnabled() {
|
||||
return Bits.IsAllowModuleWithCompilerErrorsEnabled;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user