diff options
author | Ken Dyck <kd@kendyck.com> | 2011-02-16 01:43:15 +0000 |
---|---|---|
committer | Ken Dyck <kd@kendyck.com> | 2011-02-16 01:43:15 +0000 |
commit | df205382dae666b011d857402114e4f4acd56c81 (patch) | |
tree | 684bde282216694cb2cb9fbbd1c3b9d6cca238ce | |
parent | 682180bf823c315cf2d7f2bb866a310649dbb216 (diff) |
Convert NonVirtualAlignment to CharUnits. No change in functionality
intended.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125638 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/AST/RecordLayoutBuilder.cpp | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/lib/AST/RecordLayoutBuilder.cpp b/lib/AST/RecordLayoutBuilder.cpp index a9f9f108e7..a32b7814fb 100644 --- a/lib/AST/RecordLayoutBuilder.cpp +++ b/lib/AST/RecordLayoutBuilder.cpp @@ -578,7 +578,7 @@ protected: uint64_t DataSize; uint64_t NonVirtualSize; - unsigned NonVirtualAlignment; + CharUnits NonVirtualAlignment; /// PrimaryBase - the primary base class (if one exists) of the class /// we're laying out. @@ -613,8 +613,8 @@ protected: : Context(Context), EmptySubobjects(EmptySubobjects), Size(0), Alignment(8), UnpackedAlignment(Alignment), Packed(false), IsUnion(false), IsMac68kAlign(false), UnfilledBitsInLastByte(0), MaxFieldAlignment(0), - DataSize(0), NonVirtualSize(0), NonVirtualAlignment(8), PrimaryBase(0), - PrimaryBaseIsVirtual(false), FirstNearlyEmptyVBase(0) { } + DataSize(0), NonVirtualSize(0), NonVirtualAlignment(CharUnits::One()), + PrimaryBase(0), PrimaryBaseIsVirtual(false), FirstNearlyEmptyVBase(0) { } void Layout(const RecordDecl *D); void Layout(const CXXRecordDecl *D); @@ -1164,7 +1164,7 @@ void RecordLayoutBuilder::Layout(const CXXRecordDecl *RD) { LayoutFields(RD); NonVirtualSize = Size; - NonVirtualAlignment = Alignment; + NonVirtualAlignment = Context.toCharUnitsFromBits(Alignment); // Lay out the virtual bases and add the primary virtual base offsets. LayoutVirtualBases(RD, RD); @@ -1679,7 +1679,6 @@ ASTContext::getASTRecordLayout(const RecordDecl *D) const { IsPODForThePurposeOfLayout ? Builder->Size : Builder->DataSize; uint64_t NonVirtualSize = IsPODForThePurposeOfLayout ? DataSize : Builder->NonVirtualSize; - uint64_t NonVirtualAlign = Builder->NonVirtualAlignment; CharUnits RecordSize = toCharUnitsFromBits(Builder->Size); NewEntry = @@ -1689,7 +1688,7 @@ ASTContext::getASTRecordLayout(const RecordDecl *D) const { Builder->FieldOffsets.data(), Builder->FieldOffsets.size(), toCharUnitsFromBits(NonVirtualSize), - toCharUnitsFromBits(NonVirtualAlign), + Builder->NonVirtualAlignment, EmptySubobjects.SizeOfLargestEmptySubobject, Builder->PrimaryBase, Builder->PrimaryBaseIsVirtual, |