Cleanup, no functionality change.

llvm-svn: 99798
diff --git a/clang/lib/CodeGen/CGClass.cpp b/clang/lib/CodeGen/CGClass.cpp
index f6d19b4..dfad33c 100644
--- a/clang/lib/CodeGen/CGClass.cpp
+++ b/clang/lib/CodeGen/CGClass.cpp
@@ -1584,12 +1584,7 @@
     // And load the address point from the VTT.
     VTableAddressPoint = Builder.CreateLoad(VTT);
   } else {
-    const CodeGenVTables::AddrSubMap_t& AddressPoints =
-      CGM.getVTables().getAddressPoints(VTableClass);
-  
-    uint64_t AddressPoint = 
-      AddressPoints.lookup(std::make_pair(Base.getBase(),
-                                          Base.getBaseOffset()));
+    uint64_t AddressPoint = CGM.getVTables().getAddressPoint(Base, VTableClass);
     VTableAddressPoint =
       Builder.CreateConstInBoundsGEP2_64(VTable, 0, AddressPoint);
   }
diff --git a/clang/lib/CodeGen/CGVtable.cpp b/clang/lib/CodeGen/CGVtable.cpp
index 592f782..3322510 100644
--- a/clang/lib/CodeGen/CGVtable.cpp
+++ b/clang/lib/CodeGen/CGVtable.cpp
@@ -3609,6 +3609,19 @@
   return I->second;
 }
 
+uint64_t
+CodeGenVTables::getAddressPoint(BaseSubobject Base, const CXXRecordDecl *RD) {
+  const CodeGenVTables::AddrSubMap_t& AddressPoints = getAddressPoints(RD);
+
+  uint64_t AddressPoint = 
+    AddressPoints.lookup(std::make_pair(Base.getBase(),
+                                        Base.getBaseOffset()));
+  
+  assert(AddressPoint && "Address point must not be zero!");
+  
+  return AddressPoint;
+}
+
 const CodeGenVTables::AddrSubMap_t &
 CodeGenVTables::getAddressPoints(const CXXRecordDecl *RD) {
   if (!OldAddressPoints[RD]) {
diff --git a/clang/lib/CodeGen/CGVtable.h b/clang/lib/CodeGen/CGVtable.h
index e07017b..6dd37a4 100644
--- a/clang/lib/CodeGen/CGVtable.h
+++ b/clang/lib/CodeGen/CGVtable.h
@@ -373,6 +373,10 @@
   int64_t getVirtualBaseOffsetOffset(const CXXRecordDecl *RD,
                                      const CXXRecordDecl *VBase);
 
+  /// getAddressPoint - Get the address point of the given subobject in the
+  /// class decl.
+  uint64_t getAddressPoint(BaseSubobject Base, const CXXRecordDecl *RD);
+  
   /// GetAddrOfVTable - Get the address of the vtable for the given record decl.
   llvm::Constant *GetAddrOfVTable(const CXXRecordDecl *RD);