[ThinLTO] Save 8B per summary entry by rearranging the fields (NFC)

Size goes from 72B to 64B per entry.

Differential Revision: https://reviews.llvm.org/D27970

llvm-svn: 290314
This commit is contained in:
Mehdi Amini 2016-12-22 04:09:29 +00:00
parent ee5d8d2da0
commit 09072165d5

View File

@ -100,7 +100,7 @@ template <> struct DenseMapInfo<ValueInfo> {
class GlobalValueSummary {
public:
/// \brief Sububclass discriminator (for dyn_cast<> et al.)
enum SummaryKind { AliasKind, FunctionKind, GlobalVarKind };
enum SummaryKind : unsigned { AliasKind, FunctionKind, GlobalVarKind };
/// Group flags (Linkage, noRename, isOptSize, etc.) as a bitfield.
struct GVFlags {
@ -152,6 +152,8 @@ private:
/// Kind of summary for use in dyn_cast<> et al.
SummaryKind Kind;
GVFlags Flags;
/// This is the hash of the name of the symbol in the original file. It is
/// identical to the GUID for global symbols, but differs for local since the
/// GUID includes the module level id in the hash.
@ -166,8 +168,6 @@ private:
/// module path string table.
StringRef ModulePath;
GVFlags Flags;
/// List of values referenced by this global value's definition
/// (either by the initializer of a global variable, or referenced
/// from within a function). This does not include functions called, which