diff options
author | Michael Zolotukhin <mzolotukhin@apple.com> | 2018-03-12 20:36:25 +0000 |
---|---|---|
committer | Michael Zolotukhin <mzolotukhin@apple.com> | 2018-03-12 20:36:25 +0000 |
commit | a3d8ef0f0821f674a24587f0a477cf33e15ae06e (patch) | |
tree | 02e4ed064021baa610395981d121c1285d1f134e /lldb/packages/Python/lldbsuite/test/lldbtest.py | |
parent | d1faa56f3ddfb104aad9a7b6000eca869c42d8c4 (diff) | |
download | bcm5719-llvm-a3d8ef0f0821f674a24587f0a477cf33e15ae06e.tar.gz bcm5719-llvm-a3d8ef0f0821f674a24587f0a477cf33e15ae06e.zip |
Improve caching scheme in ProvenanceAnalysis.
Summary:
ProvenanceAnalysis::related(A, B) currently memoizes its results, and on big
tests the cache grows too large, and we're spending most of the time
growing/looking through DenseMap.
This patch reduces the size of the cache by normalizing keys first: we do that
by calling GetUnderlyingObjCPtr on the input values. The results of
GetUnderlyingObjCPtr are also memoized in a separate cache.
The patch doesn't bring noticable changes to compile time on CTMark, however
significantly helps one of our internal tests.
Reviewers: gottesmm
Subscribers: hiraditya, llvm-commits
Differential Revision: https://reviews.llvm.org/D44270
llvm-svn: 327328
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/lldbtest.py')
0 files changed, 0 insertions, 0 deletions