diff options
author | Chris Lattner <sabre@nondot.org> | 2009-01-26 04:33:10 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2009-01-26 04:33:10 +0000 |
commit | ad13cf4e7a3ca27f2303156ee15c6eb06430cbde (patch) | |
tree | 76a1f0a924580e992613e0579f44a9963f742b86 /llvm/lib/CodeGen/MachineFunction.cpp | |
parent | 5a5d67101b71577a89a1a3ee89f1b85994d83304 (diff) | |
download | llvm-ad13cf4e7a3ca27f2303156ee15c6eb06430cbde.zip llvm-ad13cf4e7a3ca27f2303156ee15c6eb06430cbde.tar.gz llvm-ad13cf4e7a3ca27f2303156ee15c6eb06430cbde.tar.bz2 |
eagerly resolve the spelling locations of macro argument preexpansions.
This reduces fsyntax-only time on c99-intconst-1.c from 2.43s down to
2.01s (20%), reducing the number of fileid lookups from 2529040 linear
and 64771121 binary to 5625902 linear and 4151182 binary.
This knocks getFileID down to only 4.6% of compile time on this testcase.
At this point, malloc/free is over 35% of compile time, primarily allocating
MacroArgs objects and their argument preexpansion vectors.
I don't feel like malloc avoiding right now, so I'm just going to call
this good.
llvm-svn: 62994
Diffstat (limited to 'llvm/lib/CodeGen/MachineFunction.cpp')
0 files changed, 0 insertions, 0 deletions