[llvm-commits] [llvm] r157113 - in /llvm/trunk/include/llvm/ADT: DenseMap.h TinyPtrVector.h

Benjamin Kramer benny.kra at googlemail.com
Sat May 19 11:07:10 PDT 2012


On 19.05.2012, at 18:50, Chris Lattner wrote:

> On May 19, 2012, at 6:28 AM, Benjamin Kramer wrote:
>> Author: d0k
>> Date: Sat May 19 08:28:54 2012
>> New Revision: 157113
>> 
>> URL: http://llvm.org/viewvc/llvm-project?rev=157113&view=rev
>> Log:
>> Provide move semantics for TinyPtrVector and for DenseMap's rehash function.
>> 
>> This makes DenseMap<..., TinyPtrVector<...>> as cheap as it always should've been!
> 
> Cool!  Is this enough to fully move-enable densemap?  Can it be used with move-only types like std::unique_ptr?

It would also require adding move-enabled versions for operator[] and friends, which I didn't get around to yet (rehashing is the most painful part). Also DenseMap could use a move ctor + move operator= to take full advantage of move semantics.

- Ben



More information about the llvm-commits mailing list