File tree Expand file tree Collapse file tree 1 file changed +7
-4
lines changed Expand file tree Collapse file tree 1 file changed +7
-4
lines changed Original file line number Diff line number Diff line change @@ -2072,8 +2072,10 @@ void SILSerializer::writeSILGlobalVar(const SILGlobalVariable &g) {
2072
2072
}
2073
2073
2074
2074
void SILSerializer::writeSILVTable (const SILVTable &vt) {
2075
- // Do not emit vtables for non-public classes.
2076
- if (vt.getClass ()->getEffectiveAccess () < swift::AccessLevel::Public)
2075
+ // Do not emit vtables for non-public classes unless everything has to be
2076
+ // serialized.
2077
+ if (!ShouldSerializeAll &&
2078
+ vt.getClass ()->getEffectiveAccess () < swift::AccessLevel::Public)
2077
2079
return ;
2078
2080
VTableList[vt.getClass ()->getName ()] = NextVTableID++;
2079
2081
VTableOffset.push_back (Out.GetCurrentBitNo ());
@@ -2082,8 +2084,9 @@ void SILSerializer::writeSILVTable(const SILVTable &vt) {
2082
2084
2083
2085
for (auto &entry : vt.getEntries ()) {
2084
2086
SmallVector<ValueID, 4 > ListOfValues;
2085
- // Do not emit entries which are not public or serialized.
2086
- if (entry.Implementation &&
2087
+ // Do not emit entries which are not public or serialized, unless everything
2088
+ // has to be serialized.
2089
+ if (!ShouldSerializeAll && entry.Implementation &&
2087
2090
!entry.Implementation ->isPossiblyUsedExternally () &&
2088
2091
!entry.Implementation ->isSerialized ())
2089
2092
continue ;
You can’t perform that action at this time.
0 commit comments