[cfe-commits] r70055 - in /cfe/trunk: include/clang/Frontend/PCHBitCodes.h include/clang/Frontend/PCHReader.h include/clang/Frontend/PCHWriter.h lib/Frontend/PCHReader.cpp lib/Frontend/PCHWriter.cpp
Chris Lattner
clattner at apple.com
Sat Apr 25 11:21:31 PDT 2009
On Apr 25, 2009, at 10:55 AM, Douglas Gregor wrote:
>
> On Apr 25, 2009, at 10:48 AM, Douglas Gregor wrote:
>
>> Author: dgregor
>> Date: Sat Apr 25 12:48:32 2009
>> New Revision: 70055
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=70055&view=rev
>> Log:
>> Load the selector table lazily from the PCH file.
>>
>> This results in a 10% speedup on the Cocoa-prefixed "Hello, World!",
>> all of which is (not surprisingly) user time. There was a tiny
>> reduction in the size of the PCH file for Cocoa.h, because certain
>> selectors aren't being written twice.
Very nice! Makes sense,
> ... and I neglected to provide the PCH statistics for the Cocoa-
> prefixed "Hello, world!", which are:
>
> *** PCH Statistics:
> 18/20838 types read (0.086381%)
> 16/80753 declarations read (0.019814%)
> 527/56449 identifiers read (0.933586%)
> 0/6654 selectors read (0.000000%)
> 0/30265 statements read (0.000000%)
> 470/7806 macros read (6.021009%)
> 0/4598 lexical declcontexts read (0.000000%)
> 0/4027 visible declcontexts read (0.000000%)
> 0/6654 method pool entries read (0.000000%)
>
> Most of the macros and identifiers read are due to the non-lazy
> "#import".
Nice! I bet that your idea of switching the type/decl lists to blobs
will also reduce startup time as well,
-Chris
More information about the cfe-commits
mailing list