From: Ken Dyck Date: Sat, 2 Apr 2011 17:13:02 +0000 (+0000) Subject: Use CharUnits for the offsets in the VirtualBaseClassOffsetOffsetsMapTy. No X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d22153218848a8c7c4d81758aec09da39fef29ae;p=clang Use CharUnits for the offsets in the VirtualBaseClassOffsetOffsetsMapTy. No change in functionality intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128773 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/CGVTables.cpp b/lib/CodeGen/CGVTables.cpp index d5eab28e74..8ccba1fa2f 100644 --- a/lib/CodeGen/CGVTables.cpp +++ b/lib/CodeGen/CGVTables.cpp @@ -2438,7 +2438,7 @@ int64_t CodeGenVTables::getVirtualBaseOffsetOffset(const CXXRecordDecl *RD, VirtualBaseClassOffsetOffsetsMapTy::iterator I = VirtualBaseClassOffsetOffsets.find(ClassPair); if (I != VirtualBaseClassOffsetOffsets.end()) - return I->second; + return I->second.getQuantity(); VCallAndVBaseOffsetBuilder Builder(RD, RD, /*FinalOverriders=*/0, BaseSubobject(RD, CharUnits::Zero()), @@ -2452,13 +2452,13 @@ int64_t CodeGenVTables::getVirtualBaseOffsetOffset(const CXXRecordDecl *RD, ClassPairTy ClassPair(RD, I->first); VirtualBaseClassOffsetOffsets.insert( - std::make_pair(ClassPair, I->second.getQuantity())); + std::make_pair(ClassPair, I->second)); } I = VirtualBaseClassOffsetOffsets.find(ClassPair); assert(I != VirtualBaseClassOffsetOffsets.end() && "Did not find index!"); - return I->second; + return I->second.getQuantity(); } uint64_t @@ -2910,7 +2910,7 @@ void CodeGenVTables::ComputeVTableRelatedInformation(const CXXRecordDecl *RD, ClassPairTy ClassPair(RD, I->first); VirtualBaseClassOffsetOffsets.insert( - std::make_pair(ClassPair, I->second.getQuantity())); + std::make_pair(ClassPair, I->second)); } } diff --git a/lib/CodeGen/CGVTables.h b/lib/CodeGen/CGVTables.h index b2f9401858..ed0119b4b2 100644 --- a/lib/CodeGen/CGVTables.h +++ b/lib/CodeGen/CGVTables.h @@ -103,9 +103,9 @@ class CodeGenVTables { const CXXRecordDecl *> ClassPairTy; /// VirtualBaseClassOffsetOffsets - Contains the vtable offset (relative to - /// the address point) in bytes where the offsets for virtual bases of a class + /// the address point) in chars where the offsets for virtual bases of a class /// are stored. - typedef llvm::DenseMap + typedef llvm::DenseMap VirtualBaseClassOffsetOffsetsMapTy; VirtualBaseClassOffsetOffsetsMapTy VirtualBaseClassOffsetOffsets;