diff --git a/clang/lib/CodeGen/CodeGenFunction.h b/clang/lib/CodeGen/CodeGenFunction.h index 143ad64e8816b..fc9b32878068c 100644 --- a/clang/lib/CodeGen/CodeGenFunction.h +++ b/clang/lib/CodeGen/CodeGenFunction.h @@ -203,6 +203,7 @@ template <> struct DominatingValue { llvm::Value *Value; llvm::Type *ElementType; + LLVM_PREFERRED_TYPE(Kind) unsigned K : 3; unsigned Align : 29; saved_type(llvm::Value *v, llvm::Type *e, Kind k, unsigned a = 0) @@ -650,9 +651,11 @@ class CodeGenFunction : public CodeGenTypeCache { struct LifetimeExtendedCleanupHeader { /// The size of the following cleanup object. unsigned Size; - /// The kind of cleanup to push: a value from the CleanupKind enumeration. + /// The kind of cleanup to push. + LLVM_PREFERRED_TYPE(CleanupKind) unsigned Kind : 31; /// Whether this is a conditional cleanup. + LLVM_PREFERRED_TYPE(bool) unsigned IsConditional : 1; size_t getSize() const { return Size; }