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:
@@ -1557,6 +1557,11 @@ static bool validateTBDIfNeeded(const CompilerInvocation &Invocation,
|
||||
return false;
|
||||
}
|
||||
|
||||
// Embedded Swift does not support TBD.
|
||||
if (Invocation.getLangOptions().hasFeature(Feature::Embedded)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// Cross-module optimization does not support TBD.
|
||||
if (Invocation.getSILOptions().CMOMode == CrossModuleOptimizationMode::Aggressive) {
|
||||
return false;
|
||||
|
||||
Reference in New Issue
Block a user