From 14c7500b8ca27fba362a98cd5e2441be9016109d Mon Sep 17 00:00:00 2001 From: Devang Patel Date: Mon, 10 Dec 2007 18:25:34 +0000 Subject: [PATCH] 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 --- CodeGen/CodeGenTypes.cpp | 2 +- test/CodeGen/struct.c | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) 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; -- 2.50.1