IRGen: Don't reify internal vtable entries that are marked overridden.

Private and internal classes shouldn't have ABI constraints on their concrete vtable layout, so if methods
don't have overrides in practice, we can elide their vtable entries.
This commit is contained in:
Joe Groff
2020-06-11 15:12:18 -07:00
parent db9cf4cd80
commit 04c8f0df42
17 changed files with 221 additions and 55 deletions

View File

@@ -595,7 +595,7 @@ public:
bool deserializeLazily=true);
/// Look up the VTable mapped to the given ClassDecl. Returns null on failure.
SILVTable *lookUpVTable(const ClassDecl *C);
SILVTable *lookUpVTable(const ClassDecl *C, bool deserializeLazily = true);
/// Attempt to lookup the function corresponding to \p Member in the class
/// hierarchy of \p Class.