We don't need to keep track of the packed alignment, just whether the struct is packed or not. Fixes PR4610.
llvm-svn: 76884
diff --git a/clang/lib/CodeGen/CGRecordLayoutBuilder.h b/clang/lib/CodeGen/CGRecordLayoutBuilder.h
index 2f212f8..197e420 100644
--- a/clang/lib/CodeGen/CGRecordLayoutBuilder.h
+++ b/clang/lib/CodeGen/CGRecordLayoutBuilder.h
@@ -33,10 +33,8 @@
class CGRecordLayoutBuilder {
CodeGenTypes &Types;
- /// StructPacking - Will be 0 if this struct is not packed. If it is packed,
- /// it will have the packing alignment in bits.
- ///
- unsigned StructPacking;
+ /// Packed - Whether the resulting LLVM struct will be packed or not.
+ bool Packed;
/// AlignmentAsLLVMStruct - Will contain the maximum alignment of all the
/// LLVM types.
@@ -79,7 +77,7 @@
llvm::SmallVector<LLVMBitFieldInfo, 16> LLVMBitFields;
CGRecordLayoutBuilder(CodeGenTypes &Types)
- : Types(Types), StructPacking(0), AlignmentAsLLVMStruct(1)
+ : Types(Types), Packed(false), AlignmentAsLLVMStruct(1)
, BitsAvailableInLastField(0) { }
/// Layout - Will layout a RecordDecl.