diff options
author | Daniel Dunbar <daniel@zuster.org> | 2012-03-09 04:12:54 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2012-03-09 04:12:54 +0000 |
commit | bc5419a2edc4030d1a623576fe339fbd3eed17a6 (patch) | |
tree | e03757fe732c0b0aa5f32a4b74db0c8a845e83e2 /test/Parser/cxx11-user-defined-literals.cpp | |
parent | 5aba3eb1be234336767f86c7252ed307255f4d4d (diff) |
[AST] Memoize ASTContext::getTypeInfo().
- On -emit-llvm-only of 403.gcc/combine.c, for example, we make 160k calls to
getTypeInfo but only ever deal with 680 some distinct types.
I saw these speedups (user time):
403.gcc/combine.c -- 3.1%
OmniGroupFrameworks/NSBezierPath-OAExtensions.m -- 3.6%
JavaScriptCore/Interpreter.cpp -- 1.4%
which seems pretty sweet.
I ran some histograms on those compiles and we end up doing a ton of
getTypeInfo() on 'char' and 'int'. I tried splitting out a fast path for builtin
types, but this wasn't a win. Still kinda seems like we could be doing better
here.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152377 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Parser/cxx11-user-defined-literals.cpp')
0 files changed, 0 insertions, 0 deletions