mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
[embedded] Add basics of module serialization, importing and validation in embedded Swift.
- Add a flag to the serialized module (IsEmbeddedSwiftModule) - Check on import that the mode matches (don't allow importing non-embedded module in embedded mode and vice versa) - Drop TBD support, it's not expected to work in embedded Swift for now - Drop auto-linking backdeploy libraries, it's not expected to backdeploy embedded Swift for now - Drop prespecializations, not expected to work in embedded Swift for now - Use CMO to serialize everything when emitting an embedded Swift module - Change SILLinker to deserialize/import everything when importing an embedded Swift module - Add an IR test for importing modules - Add a deserialization validation test
This commit is contained in:
@@ -656,6 +656,14 @@ public:
|
||||
Bits.ModuleDecl.HasHermeticSealAtLink = enabled;
|
||||
}
|
||||
|
||||
/// Returns true if this module was built with embedded Swift
|
||||
bool isEmbeddedSwiftModule() const {
|
||||
return Bits.ModuleDecl.IsEmbeddedSwiftModule;
|
||||
}
|
||||
void setIsEmbeddedSwiftModule(bool enabled = true) {
|
||||
Bits.ModuleDecl.IsEmbeddedSwiftModule = enabled;
|
||||
}
|
||||
|
||||
/// Returns true if this module was built with C++ interoperability enabled.
|
||||
bool hasCxxInteroperability() const {
|
||||
return Bits.ModuleDecl.HasCxxInteroperability;
|
||||
|
||||
Reference in New Issue
Block a user