diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2013-04-26 12:31:12 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2013-04-26 12:31:12 +0000 |
commit | 210257fb33566259aac7facbb5b10feccbe5dc5a (patch) | |
tree | f406186c099eca3f96aae183f461cbc917c54fad | |
parent | aec90531f98b1df7253b26585d51c54cba903230 (diff) | |
download | bcm5719-llvm-210257fb33566259aac7facbb5b10feccbe5dc5a.tar.gz bcm5719-llvm-210257fb33566259aac7facbb5b10feccbe5dc5a.zip |
Use bitfilds.
On a 32 bit build this moves LinkageSpecDecl from 52 to 48 bytes.
llvm-svn: 180601
-rw-r--r-- | clang/include/clang/AST/DeclCXX.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/clang/include/clang/AST/DeclCXX.h b/clang/include/clang/AST/DeclCXX.h index ab6fcba4d7e..c483dde1f51 100644 --- a/clang/include/clang/AST/DeclCXX.h +++ b/clang/include/clang/AST/DeclCXX.h @@ -2351,12 +2351,12 @@ public: }; private: /// Language - The language for this linkage specification. - LanguageIDs Language; + unsigned Language : 3; /// True if this linkage spec has brances. This is needed so that hasBraces() /// returns the correct result while the linkage spec body is being parsed. /// Once RBraceLoc has been set this is not used, so it doesn't need to be /// serialized. - bool HasBraces; + unsigned HasBraces : 1; /// ExternLoc - The source location for the extern keyword. SourceLocation ExternLoc; /// RBraceLoc - The source location for the right brace (if valid). @@ -2376,7 +2376,7 @@ public: static LinkageSpecDecl *CreateDeserialized(ASTContext &C, unsigned ID); /// \brief Return the language specified by this linkage specification. - LanguageIDs getLanguage() const { return Language; } + LanguageIDs getLanguage() const { return LanguageIDs(Language); } /// \brief Set the language specified by this linkage specification. void setLanguage(LanguageIDs L) { Language = L; } |