From a72c352e4950cb487942427550777378b68dc078 Mon Sep 17 00:00:00 2001 From: Benjamin Kramer Date: Sun, 26 Feb 2012 17:31:32 +0000 Subject: [PATCH] Shuffle members of DesignatedInitExpr to avoid padding. 40 -> 32 bytes on x86_64. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151495 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/clang/AST/Expr.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/include/clang/AST/Expr.h b/include/clang/AST/Expr.h index e053fd7002..5acee7848a 100644 --- a/include/clang/AST/Expr.h +++ b/include/clang/AST/Expr.h @@ -3667,15 +3667,15 @@ private: /// The number of designators in this initializer expression. unsigned NumDesignators : 15; - /// \brief The designators in this designated initialization - /// expression. - Designator *Designators; - /// The number of subexpressions of this initializer expression, /// which contains both the initializer and any additional /// expressions used by array and array-range designators. unsigned NumSubExprs : 16; + /// \brief The designators in this designated initialization + /// expression. + Designator *Designators; + DesignatedInitExpr(ASTContext &C, QualType Ty, unsigned NumDesignators, const Designator *Designators, @@ -3685,7 +3685,7 @@ private: explicit DesignatedInitExpr(unsigned NumSubExprs) : Expr(DesignatedInitExprClass, EmptyShell()), - NumDesignators(0), Designators(0), NumSubExprs(NumSubExprs) { } + NumDesignators(0), NumSubExprs(NumSubExprs), Designators(0) { } public: /// A field designator, e.g., ".x". -- 2.40.0