mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
Fix unnecessary one-time recompile of stdlib with -enable-ossa-flag (#39516)
* Fix unnecessary one-time recompile of stdlib with -enable-ossa-flag This includes a bit in the module format to represent if the module was compiled with -enable-ossa-modules flag. When compiling a client module with -enable-ossa-modules flag, all dependent modules are checked for this bit, if not on, recompilation is triggered with -enable-ossa-modules. * Updated tests
This commit is contained in:
@@ -2151,8 +2151,8 @@ bool CompilerInvocation::parseArgs(
|
||||
serialization::Status
|
||||
CompilerInvocation::loadFromSerializedAST(StringRef data) {
|
||||
serialization::ExtendedValidationInfo extendedInfo;
|
||||
serialization::ValidationInfo info =
|
||||
serialization::validateSerializedAST(data, &extendedInfo);
|
||||
serialization::ValidationInfo info = serialization::validateSerializedAST(
|
||||
data, getSILOptions().EnableOSSAModules, &extendedInfo);
|
||||
|
||||
if (info.status != serialization::Status::Valid)
|
||||
return info.status;
|
||||
@@ -2187,7 +2187,8 @@ CompilerInvocation::setUpInputForSILTool(
|
||||
InputFile(inputFilename, bePrimary, fileBufOrErr.get().get(), file_types::TY_SIL));
|
||||
|
||||
auto result = serialization::validateSerializedAST(
|
||||
fileBufOrErr.get()->getBuffer(), &extendedInfo);
|
||||
fileBufOrErr.get()->getBuffer(), getSILOptions().EnableOSSAModules,
|
||||
&extendedInfo);
|
||||
bool hasSerializedAST = result.status == serialization::Status::Valid;
|
||||
|
||||
if (hasSerializedAST) {
|
||||
|
||||
Reference in New Issue
Block a user