diff options
author | Ted Kremenek <kremenek@apple.com> | 2008-02-04 21:15:24 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2008-02-04 21:15:24 +0000 |
commit | f357afb4045307a24c52606e267385148367a7a3 (patch) | |
tree | 724a4c59d9803084e7b5d0c2769d45c7a66b635e /lib/CodeGen/MachineFunction.cpp | |
parent | 26e3c445fc844b2f241dfdde9ce7e0602ba13cc4 (diff) |
Modified node creation of ImutAVLTree to do a hash lookup for an existing
node in the FoldingSet of nodes held by the Factory object. If we
we find a node with a matching hash, we do a full structural comparison.
Nodes are also now inserted into the FoldingSet only when we mark them
Immutable, as their children can change during intermediate-rebalancing.
The 'Profile' method for ImutAVLTree is no longer used when looking up
existing ImutAVLTrees with a given set of contents; instead the Profile method
is used by other clients that wish to insert such a tree into a folding set.
This means that we are not using FoldingSet in ImutAVLTreeFactory in the way
it was intended, but instead are using it as an opaque hashtable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46717 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/MachineFunction.cpp')
0 files changed, 0 insertions, 0 deletions