From: Eli Friedman Date: Fri, 4 Dec 2009 08:36:58 +0000 (+0000) Subject: Eliminate submethods vector. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=ca9b56c26a8ab2a01439b191cffb4b8329260268;p=clang Eliminate submethods vector. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90562 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/CGVtable.cpp b/lib/CodeGen/CGVtable.cpp index 154e0fad33..40daadb824 100644 --- a/lib/CodeGen/CGVtable.cpp +++ b/lib/CodeGen/CGVtable.cpp @@ -28,7 +28,6 @@ public: typedef uint64_t Index_t; private: std::vector &methods; - std::vector submethods; llvm::Type *Ptr8Ty; /// Class - The most derived class that this vtable is being built for. const CXXRecordDecl *Class; @@ -343,7 +342,6 @@ public: // entry. Methods.AddMethod(GD); - submethods.push_back(m); D1(printf(" vfn for %s at %d\n", MD->getNameAsString().c_str(), (int)Index[GD])); if (MorallyVirtual) { @@ -473,8 +471,6 @@ public: methods.push_back(rtti); Index_t AddressPoint = methods.size(); - assert(submethods.size() == Methods.size() && "Method size mismatch!"); - AppendMethodsToVtable(); // and then the non-virtual bases. @@ -780,7 +776,6 @@ bool VtableBuilder::OverrideMethod(GlobalDecl GD, llvm::Constant *m, Methods.OverrideMethod(OGD, GD); - submethods[Index] = m; ThisAdjustments.erase(Index); if (MorallyVirtual || VCall.count(OGD)) { Index_t &idx = VCall[OGD]; @@ -886,7 +881,6 @@ void VtableBuilder::AppendMethodsToVtable() { BaseReturnTypes.clear(); Methods.clear(); - submethods.clear(); } void CGVtableInfo::ComputeMethodVtableIndices(const CXXRecordDecl *RD) {