[llvm] r238655 - [MC] Reorder MCSymbol members to reduce padding.

Benjamin Kramer benny.kra at googlemail.com
Sat May 30 06:52:30 PDT 2015


Author: d0k
Date: Sat May 30 08:52:30 2015
New Revision: 238655

URL: http://llvm.org/viewvc/llvm-project?rev=238655&view=rev
Log:
[MC] Reorder MCSymbol members to reduce padding.

sizeof(MCSymbol) goes from 72 to 64 bytes on x86_64.

Modified:
    llvm/trunk/include/llvm/MC/MCSymbol.h

Modified: llvm/trunk/include/llvm/MC/MCSymbol.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/MC/MCSymbol.h?rev=238655&r1=238654&r2=238655&view=diff
==============================================================================
--- llvm/trunk/include/llvm/MC/MCSymbol.h (original)
+++ llvm/trunk/include/llvm/MC/MCSymbol.h Sat May 30 08:52:30 2015
@@ -72,11 +72,6 @@ class MCSymbol {
   /// symbol has no size this field will be NULL.
   const MCExpr *SymbolSize = nullptr;
 
-  /// The alignment of the symbol, if it is 'common', or -1.
-  //
-  // FIXME: Pack this in with other fields?
-  unsigned CommonAlign = -1U;
-
   union {
     /// The offset to apply to the fragment address to form this symbol's value.
     uint64_t Offset;
@@ -85,6 +80,11 @@ class MCSymbol {
     uint64_t CommonSize;
   };
 
+  /// The alignment of the symbol, if it is 'common', or -1.
+  //
+  // FIXME: Pack this in with other fields?
+  unsigned CommonAlign = -1U;
+
   /// The Flags field is used by object file implementations to store
   /// additional per symbol information which is not easily classified.
   mutable uint32_t Flags = 0;





More information about the llvm-commits mailing list