aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/CGRecordLayoutBuilder.cpp
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2009-08-08 18:01:57 +0000
committerAnders Carlsson <andersca@mac.com>2009-08-08 18:01:57 +0000
commitdf31e091126da6a5c08303a78b562d00e7fd4e20 (patch)
treed2f1aca2c9623a628a5055728b697582f64ca2fe /lib/CodeGen/CGRecordLayoutBuilder.cpp
parentfb7ef75a28af7b6a7f666df2a5db53cf90d957b1 (diff)
Assert that the LLVM type has the same size as the RecordDecl size.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78481 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CGRecordLayoutBuilder.cpp')
-rw-r--r--lib/CodeGen/CGRecordLayoutBuilder.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/CodeGen/CGRecordLayoutBuilder.cpp b/lib/CodeGen/CGRecordLayoutBuilder.cpp
index 241a6e5395..a119d4f3a4 100644
--- a/lib/CodeGen/CGRecordLayoutBuilder.cpp
+++ b/lib/CodeGen/CGRecordLayoutBuilder.cpp
@@ -301,6 +301,9 @@ CGRecordLayoutBuilder::ComputeLayout(CodeGenTypes &Types,
const llvm::Type *Ty = llvm::StructType::get(Types.getLLVMContext(),
Builder.FieldTypes,
Builder.Packed);
+ assert(Types.getContext().getASTRecordLayout(D).getSize() / 8 ==
+ Types.getTargetData().getTypeAllocSize(Ty) &&
+ "Type size mismatch!");
// Add all the field numbers.
for (unsigned i = 0, e = Builder.LLVMFields.size(); i != e; ++i) {