[llvm-commits] PATCH: add ContextualDenseMap

Nick Lewycky nicholas at mxc.ca
Thu Aug 26 08:22:29 PDT 2010


This patch adds a new ContextualDenseMap and sinks most of the dense map 
logic into DenseMapImpl. A ContextualDenseMap takes a 
ContextualDenseMapInfo pointer instead of just a typename. I need this 
for mergefuncs where I want a comparison operation that involves target 
data.

The four map info functions (getTombstoneKey, getEmptyKey, getHashValue 
and isEqual) are made virtual in DenseMapImpl and then implemented once 
in DenseMap and again in ContextualDenseMap. This implementation is 
modelled after the relationship between ContextualFoldingSet and FoldingSet.

Please review!

Nick
-------------- next part --------------
A non-text attachment was scrubbed...
Name: contextual-densemap.patch
Type: text/x-patch
Size: 14616 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20100826/35ed333d/attachment.bin>


More information about the llvm-commits mailing list