diff options
| author | Ken Dyck <kd@kendyck.com> | 2011-04-07 12:37:09 +0000 |
|---|---|---|
| committer | Ken Dyck <kd@kendyck.com> | 2011-04-07 12:37:09 +0000 |
| commit | bb4e977218dbc610d8fc9e475e46c8bc3ee07da1 (patch) | |
| tree | 781084ac6771ef83c9424039c5df7b8449d8bc12 /clang/lib/CodeGen/CGVTables.cpp | |
| parent | f6e259049dab79b42142853f51af06eb8e222de7 (diff) | |
| download | llvm-bb4e977218dbc610d8fc9e475e46c8bc3ee07da1.zip llvm-bb4e977218dbc610d8fc9e475e46c8bc3ee07da1.tar.gz llvm-bb4e977218dbc610d8fc9e475e46c8bc3ee07da1.tar.bz2 | |
[Reapply r128776, modified so that it does not break debug info.]
Change the return type of CodeGenVTables::getVirtualBaseOffsetOffset() to
CharUnits. No change in functionality intended.
llvm-svn: 129072
Diffstat (limited to 'clang/lib/CodeGen/CGVTables.cpp')
| -rw-r--r-- | clang/lib/CodeGen/CGVTables.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/clang/lib/CodeGen/CGVTables.cpp b/clang/lib/CodeGen/CGVTables.cpp index 8ccba1f..72376ef 100644 --- a/clang/lib/CodeGen/CGVTables.cpp +++ b/clang/lib/CodeGen/CGVTables.cpp @@ -1339,7 +1339,7 @@ ReturnAdjustment VTableBuilder::ComputeReturnAdjustment(BaseOffset Offset) { } else { Adjustment.VBaseOffsetOffset = VTables.getVirtualBaseOffsetOffset(Offset.DerivedClass, - Offset.VirtualBase); + Offset.VirtualBase).getQuantity(); } } @@ -2431,14 +2431,15 @@ uint64_t CodeGenVTables::getMethodVTableIndex(GlobalDecl GD) { return I->second; } -int64_t CodeGenVTables::getVirtualBaseOffsetOffset(const CXXRecordDecl *RD, - const CXXRecordDecl *VBase) { +CharUnits +CodeGenVTables::getVirtualBaseOffsetOffset(const CXXRecordDecl *RD, + const CXXRecordDecl *VBase) { ClassPairTy ClassPair(RD, VBase); VirtualBaseClassOffsetOffsetsMapTy::iterator I = VirtualBaseClassOffsetOffsets.find(ClassPair); if (I != VirtualBaseClassOffsetOffsets.end()) - return I->second.getQuantity(); + return I->second; VCallAndVBaseOffsetBuilder Builder(RD, RD, /*FinalOverriders=*/0, BaseSubobject(RD, CharUnits::Zero()), @@ -2458,7 +2459,7 @@ int64_t CodeGenVTables::getVirtualBaseOffsetOffset(const CXXRecordDecl *RD, I = VirtualBaseClassOffsetOffsets.find(ClassPair); assert(I != VirtualBaseClassOffsetOffsets.end() && "Did not find index!"); - return I->second.getQuantity(); + return I->second; } uint64_t |
