diff options
author | Nikolas Klauser <nikolasklauser@berlin.de> | 2024-04-14 12:08:30 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-14 12:08:30 +0200 |
commit | c6f9c84e498ee05a812511ae969773ff166fd25e (patch) | |
tree | 6a6746cf76f8f2498dc7eee0519faceb5feff883 /clang/lib/Frontend/InitPreprocessor.cpp | |
parent | 09327efdf0f02c4f865a4536db96cac539bb1c01 (diff) | |
download | llvm-c6f9c84e498ee05a812511ae969773ff166fd25e.zip llvm-c6f9c84e498ee05a812511ae969773ff166fd25e.tar.gz llvm-c6f9c84e498ee05a812511ae969773ff166fd25e.tar.bz2 |
[Clang] Reduce the size of Decl and classes derived from it (#87361)
Class | Old size (in bytes) | New size (in bytes)
----------------------------------|---------------------|--------------------
Decl | 40 | 32
AccessSpecDecl | 40 | 40
BlockDecl | 128 | 120
CapturedDecl | 88 | 80
EmptyDecl | 40 | 32
ExportDecl | 80 | 72
ExternCContextDecl | 72 | 64
FileScopeAsmDecl | 56 | 48
FriendDecl | 64 | 56
FriendTemplateDecl | 64 | 64
ImplicitConceptSpecializationDecl | 40 | 40
ImportDecl | 56 | 48
LifetimeExtendedTemporaryDecl | 72 | 64
LinkageSpecDecl | 80 | 72
NamedDecl | 48 | 40
ObjCPropertyImplDecl | 96 | 88
PragmaCommentDecl | 40 | 40
PragmaDetectMismatchDecl | 48 | 40
RequiresExprBodyDecl | 72 | 64
StaticAssertDecl | 64 | 56
TopLevelStmtDecl | 88 | 80
TranslationUnitDecl | 104 | 96
BaseUsingDecl | 56 | 48
UsingDecl | 88 | 80
UsingEnumDecl | 72 | 64
HLSLBufferDecl | 96 | 88
LabelDecl | 80 | 72
NamespaceAliasDecl | 96 | 88
NamespaceDecl | 112 | 104
ObjCCompatibleAliasDecl | 56 | 48
ObjCContainerDecl | 88 | 80
ObjCMethodDecl | 136 | 128
ObjCPropertyDecl | 128 | 120
TemplateDecl | 64 | 56
BuiltinTemplateDecl | 72 | 64
TypeDecl | 64 | 56
UnresolvedUsingIfExistsDecl | 48 | 40
UsingDirectiveDecl | 88 | 80
UsingPackDecl | 64 | 56
UsingShadowDecl | 80 | 72
ValueDecl | 56 | 48
When parsing libc++'s `<string>` header the used memory is reduced from
42.8MB to 42.5MB.
Diffstat (limited to 'clang/lib/Frontend/InitPreprocessor.cpp')
0 files changed, 0 insertions, 0 deletions