diff --git a/clang/lib/CodeGen/CGVtable.cpp b/clang/lib/CodeGen/CGVtable.cpp
index aabea4e..ad035cd 100644
--- a/clang/lib/CodeGen/CGVtable.cpp
+++ b/clang/lib/CodeGen/CGVtable.cpp
@@ -999,8 +999,8 @@
       FinalOverriders::OverriderInfo Overrider = 
         Overriders->getOverrider(Base, MD);
       
-      /// The vcall offset is the offset from the virtual base to the object where
-      /// the function was overridden.
+      /// The vcall offset is the offset from the virtual base to the object 
+      /// where the function was overridden.
       // FIXME: We should not use / 8 here.
       Offset = (int64_t)(Overrider.BaseOffset - VBaseOffset) / 8;
     }
@@ -1237,6 +1237,12 @@
   void LayoutVtablesForVirtualBases(const CXXRecordDecl *RD, 
                                     VisitedVirtualBasesSetTy &VBases);
 
+  /// isBuildingConstructionVtable - Return whether this vtable builder is
+  /// building a construction vtable.
+  bool isBuildingConstructorVtable() const { 
+    return MostDerivedClass != LayoutClass;
+  }
+
 public:
   VtableBuilder(CGVtableInfo &VtableInfo, const CXXRecordDecl *MostDerivedClass,
                 uint64_t MostDerivedClassOffset, 
