Make ImmutableMap/ImmutableSet quicker by only canonicalizing the tree after an
authorTed Kremenek <kremenek@apple.com>
Thu, 3 Sep 2009 22:07:30 +0000 (22:07 +0000)
committerTed Kremenek <kremenek@apple.com>
Thu, 3 Sep 2009 22:07:30 +0000 (22:07 +0000)
commit8b8a7fcf68c3bb6f8b90f5f1813ebb391b56e550
tree105b76e2b346bccfbbf2559db38727734f010933
parent57ed2224b3b1ad55a86741f833973a5a335c9a4c
Make ImmutableMap/ImmutableSet quicker by only canonicalizing the tree after an
Add or Remove operation complete, and not while building the intermediate tree.
This trades a little bit more memory usage for less accesses to the FoldingSet.  On a benchmark for the clang static analyzer, this shaves off another 13% of execution time when using field/array sensitivity.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80955 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/ADT/ImmutableMap.h
include/llvm/ADT/ImmutableSet.h