]> granicus.if.org Git - clang/commitdiff
Flip the switch to always get vtables from the VTT when necessary, I've verified...
authorAnders Carlsson <andersca@mac.com>
Mon, 29 Mar 2010 02:38:51 +0000 (02:38 +0000)
committerAnders Carlsson <andersca@mac.com>
Mon, 29 Mar 2010 02:38:51 +0000 (02:38 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99800 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/CGClass.cpp

index dfad33cc09f119fa31bc4b355bce751d97124cc4..ebefba24115e16deb446f4fca3da7da640bf7d0c 100644 (file)
@@ -1565,12 +1565,9 @@ CodeGenFunction::InitializeVTablePointer(BaseSubobject Base,
 
   // Compute the address point.
   llvm::Value *VTableAddressPoint;
-  
-  // FIXME: Always use the new vtable code once we know it works.
-  bool UseNewVTableCode = CGM.getLangOptions().DumpVtableLayouts;
-  
+
   // Check if we need to use a vtable from the VTT.
-  if (UseNewVTableCode && CodeGenVTables::needsVTTParameter(CurGD) &&
+  if (CodeGenVTables::needsVTTParameter(CurGD) &&
       (RD->getNumVBases() || BaseIsMorallyVirtual)) {
     // Get the secondary vpointer index.
     uint64_t VirtualPointerIndex = 
@@ -1592,8 +1589,7 @@ CodeGenFunction::InitializeVTablePointer(BaseSubobject Base,
   // Compute where to store the address point.
   llvm::Value *VTableField;
   
-  if (UseNewVTableCode && 
-      CodeGenVTables::needsVTTParameter(CurGD) && BaseIsMorallyVirtual) {
+  if (CodeGenVTables::needsVTTParameter(CurGD) && BaseIsMorallyVirtual) {
     // We need to use the virtual base offset offset because the virtual base
     // might have a different offset in the most derived class.
     VTableField = GetAddressOfBaseClass(LoadCXXThis(), VTableClass, RD,