summaryrefslogtreecommitdiffstats
path: root/clang/lib/AST/RecordLayoutBuilder.cpp
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2010-11-01 00:21:58 +0000
committerAnders Carlsson <andersca@mac.com>2010-11-01 00:21:58 +0000
commit0a14ee9ed8f0dd70e413d762a1689faeaa48642b (patch)
treed39fbadb6033219c6010842395730b37433a6b0c /clang/lib/AST/RecordLayoutBuilder.cpp
parent3f01871647a9d4d2388d73e6fc9256d622fc8f2b (diff)
downloadbcm5719-llvm-0a14ee9ed8f0dd70e413d762a1689faeaa48642b.tar.gz
bcm5719-llvm-0a14ee9ed8f0dd70e413d762a1689faeaa48642b.zip
Get rid of more calls to getBaseClassOffsetInBits.
llvm-svn: 117883
Diffstat (limited to 'clang/lib/AST/RecordLayoutBuilder.cpp')
-rw-r--r--clang/lib/AST/RecordLayoutBuilder.cpp15
1 files changed, 5 insertions, 10 deletions
diff --git a/clang/lib/AST/RecordLayoutBuilder.cpp b/clang/lib/AST/RecordLayoutBuilder.cpp
index 1fb0775dd4c..c878c25f416 100644
--- a/clang/lib/AST/RecordLayoutBuilder.cpp
+++ b/clang/lib/AST/RecordLayoutBuilder.cpp
@@ -244,8 +244,7 @@ EmptySubobjectMap::CanPlaceBaseSubobjectAtOffset(const BaseSubobjectInfo *Info,
if (Base->IsVirtual)
continue;
- CharUnits BaseOffset =
- Offset + toCharUnits(Layout.getBaseClassOffsetInBits(Base->Class));
+ CharUnits BaseOffset = Offset + Layout.getBaseClassOffset(Base->Class);
if (!CanPlaceBaseSubobjectAtOffset(Base, BaseOffset))
return false;
@@ -297,8 +296,7 @@ void EmptySubobjectMap::UpdateEmptyBaseSubobjects(const BaseSubobjectInfo *Info,
if (Base->IsVirtual)
continue;
- CharUnits BaseOffset =
- Offset + toCharUnits(Layout.getBaseClassOffsetInBits(Base->Class));
+ CharUnits BaseOffset = Offset + Layout.getBaseClassOffset(Base->Class);
UpdateEmptyBaseSubobjects(Base, BaseOffset, PlacingEmptyBase);
}
@@ -362,8 +360,7 @@ EmptySubobjectMap::CanPlaceFieldSubobjectAtOffset(const CXXRecordDecl *RD,
const CXXRecordDecl *BaseDecl =
cast<CXXRecordDecl>(I->getType()->getAs<RecordType>()->getDecl());
- CharUnits BaseOffset =
- Offset + toCharUnits(Layout.getBaseClassOffsetInBits(BaseDecl));
+ CharUnits BaseOffset = Offset + Layout.getBaseClassOffset(BaseDecl);
if (!CanPlaceFieldSubobjectAtOffset(BaseDecl, Class, BaseOffset))
return false;
}
@@ -476,8 +473,7 @@ void EmptySubobjectMap::UpdateEmptyFieldSubobjects(const CXXRecordDecl *RD,
const CXXRecordDecl *BaseDecl =
cast<CXXRecordDecl>(I->getType()->getAs<RecordType>()->getDecl());
- CharUnits BaseOffset =
- Offset + toCharUnits(Layout.getBaseClassOffsetInBits(BaseDecl));
+ CharUnits BaseOffset = Offset + Layout.getBaseClassOffset(BaseDecl);
UpdateEmptyFieldSubobjects(BaseDecl, Class, BaseOffset);
}
@@ -1065,8 +1061,7 @@ RecordLayoutBuilder::AddPrimaryVirtualBaseOffsets(const BaseSubobjectInfo *Info,
if (Base->IsVirtual)
continue;
- CharUnits BaseOffset =
- Offset + toCharUnits(Layout.getBaseClassOffsetInBits(Base->Class));
+ CharUnits BaseOffset = Offset + Layout.getBaseClassOffset(Base->Class);
AddPrimaryVirtualBaseOffsets(Base, BaseOffset);
}
}
OpenPOWER on IntegriCloud