diff options
author | Devang Patel <dpatel@apple.com> | 2007-12-10 18:25:34 +0000 |
---|---|---|
committer | Devang Patel <dpatel@apple.com> | 2007-12-10 18:25:34 +0000 |
commit | 14c7500b8ca27fba362a98cd5e2441be9016109d (patch) | |
tree | 135d04b287e0c2f569bcbee6dfbde08a2d65a3ec | |
parent | 1f2c7d110de6d3c568ab3841a31d76b9148393ac (diff) |
Use getABITypeSizeInBits() instead of getTypeSizeInBits() during struct layout.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44798 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | CodeGen/CodeGenTypes.cpp | 2 | ||||
-rw-r--r-- | test/CodeGen/struct.c | 13 |
2 files changed, 14 insertions, 1 deletions
diff --git a/CodeGen/CodeGenTypes.cpp b/CodeGen/CodeGenTypes.cpp index f73c9dfeef..f00413c849 100644 --- a/CodeGen/CodeGenTypes.cpp +++ b/CodeGen/CodeGenTypes.cpp @@ -459,7 +459,7 @@ void RecordOrganizer::layoutStructFields(const ASTRecordLayout &RL) { } else { ExtraBits = 0; const llvm::Type *Ty = CGT.ConvertType(FD->getType()); - addLLVMField(Ty, CGT.getTargetData().getTypeSizeInBits(Ty), FD, 0, 0); + addLLVMField(Ty, CGT.getTargetData().getABITypeSizeInBits(Ty), FD, 0, 0); } } STy = llvm::StructType::get(LLVMFields); diff --git a/test/CodeGen/struct.c b/test/CodeGen/struct.c index 329dfdeb6d..574cec908c 100644 --- a/test/CodeGen/struct.c +++ b/test/CodeGen/struct.c @@ -90,3 +90,16 @@ void f8() } +/* _Bool types */ + +struct _w +{ + short a,b; + short c,d; + short e,f; + short g; + + unsigned int h,i; + + _Bool j,k; +} ws; |