[PATCH] D27279: Store decls in prototypes on the declarator instead of in the AST

2016-12-09 Thread Reid Kleckner via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL289225: Store decls in prototypes on the declarator instead of in the AST (authored by rnk). Changed prior to commit: https://reviews.llvm.org/D27279?vs=80827=80910#toc Repository: rL LLVM

[PATCH] D27279: Store decls in prototypes on the declarator instead of in the AST

2016-12-09 Thread Richard Smith via Phabricator via cfe-commits
rsmith accepted this revision. rsmith added a comment. This revision is now accepted and ready to land. I'd much prefer we take this size reduction now and worry about the minor loss of ast dump fidelity later. Please delete the commented out code though :) https://reviews.llvm.org/D27279

[PATCH] D27279: Store decls in prototypes on the declarator instead of in the AST

2016-12-08 Thread Reid Kleckner via Phabricator via cfe-commits
rnk added inline comments. Comment at: include/clang/Sema/DeclSpec.h:1240 +/// in the prototype. These are generally tag types or enumerators. +unsigned NumDeclsInPrototype : 8; + rnk wrote: > rsmith wrote: > > It seems plausible that generated code

[PATCH] D27279: Store decls in prototypes on the declarator instead of in the AST

2016-12-08 Thread Reid Kleckner via Phabricator via cfe-commits
rnk updated this revision to Diff 80827. rnk marked an inline comment as done. rnk added a comment. - Reuse EH specifier storage in C - Revert dumper change https://reviews.llvm.org/D27279 Files: include/clang/AST/Decl.h include/clang/Sema/DeclSpec.h include/clang/Sema/Sema.h

[PATCH] D27279: Store decls in prototypes on the declarator instead of in the AST

2016-12-07 Thread Reid Kleckner via Phabricator via cfe-commits
rnk updated this revision to Diff 80682. rnk marked an inline comment as done. rnk added a comment. - Allow more decls in prototypes, dump fd decls https://reviews.llvm.org/D27279 Files: include/clang/AST/Decl.h include/clang/Sema/DeclSpec.h include/clang/Sema/Sema.h

[PATCH] D27279: Store decls in prototypes on the declarator instead of in the AST

2016-12-07 Thread Reid Kleckner via Phabricator via cfe-commits
rnk marked an inline comment as done. rnk added inline comments. Comment at: include/clang/Sema/DeclSpec.h:1240 +/// in the prototype. These are generally tag types or enumerators. +unsigned NumDeclsInPrototype : 8; + rsmith wrote: > It seems plausible

[PATCH] D27279: Store decls in prototypes on the declarator instead of in the AST

2016-12-07 Thread Richard Smith via Phabricator via cfe-commits
rsmith added inline comments. Comment at: include/clang/Sema/DeclSpec.h:1240 +/// in the prototype. These are generally tag types or enumerators. +unsigned NumDeclsInPrototype : 8; + It seems plausible that generated code could have more than 256 such

[PATCH] D27279: Store decls in prototypes on the declarator instead of in the AST

2016-12-07 Thread Reid Kleckner via Phabricator via cfe-commits
rnk updated this revision to Diff 80650. rnk added a comment. - Remove an assert and test that edge case https://reviews.llvm.org/D27279 Files: include/clang/AST/Decl.h include/clang/Sema/DeclSpec.h include/clang/Sema/Sema.h lib/AST/ASTDumper.cpp lib/AST/Decl.cpp

[PATCH] D27279: Store decls in prototypes on the declarator instead of in the AST

2016-12-02 Thread Nico Weber via Phabricator via cfe-commits
thakis added a comment. (Unrelated, but if you're looking at memory: When I was looking at it a while ago, IIRC a surprising amount of memory was taken up by CXXBasePaths objects, and just reordering fields to pack it better made that object several bytes smaller. IIRC I accidentally reverted

[PATCH] D27279: Store decls in prototypes on the declarator instead of in the AST

2016-11-30 Thread Reid Kleckner via Phabricator via cfe-commits
rnk created this revision. rnk added a reviewer: rsmith. rnk added subscribers: cfe-commits, jmolloy. This saves two pointers (!) from FunctionDecl that were being used for some rare and questionable C-only functionality. The DeclsInPrototypeScope ArrayRef was added in r151712 in order to parse