Thanks for all the comments!<div><br></div><div>I think I've addressed all of them, as wel as Duncan's comments from IRC. Based on your OK Nick, I'm planning to commit this tomorrow. If anyone has objections or serious concerns, please let me know to hold off. Updated patch is attached, as well as the latest version of the header.</div>
<div><br></div><div><br></div><div>For the record, the only concern that has come up thus far is one of performance. The explanation there is that while some algorithms are slightly faster (5-10 cycles max), they are significantly lower quality, and don't currently show up on profiles. I'd like to get the quality up to remove collisions, and then continue working to improve the actual performance.</div>
<div><br></div><div>Clearly, very sensitive and hot routines like the Clang lexer's StringMap aren't about to change without careful benchmarking and numbers on those specific components. =] I think StringMap will be the very last bit of hashing to change considering its requirements.</div>