History log of /external/llvm/include/llvm/ADT/TinyPtrVector.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
dce4a407a24b04eebc6a376f8e62b41aaa7b071f 29-May-2014 Stephen Hines <srhines@google.com> Update LLVM for 3.5 rebase (r209712).

Change-Id: I149556c940fb7dc92d075273c87ff584f400941f
/external/llvm/include/llvm/ADT/TinyPtrVector.h
36b56886974eae4f9c5ebc96befd3e7bfe5de338 24-Apr-2014 Stephen Hines <srhines@google.com> Update to LLVM 3.5a.

Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
/external/llvm/include/llvm/ADT/TinyPtrVector.h
4334dd96a9e622fdcf2825a8f73a2d941d67be72 30-Nov-2012 Chandler Carruth <chandlerc@gmail.com> Switch LLVM_USE_RVALUE_REFERENCES to LLVM_HAS_RVALUE_REFERENCES.

Rationale:
1) This was the name in the comment block. ;]
2) It matches Clang's __has_feature naming convention.
3) It matches other compiler-feature-test conventions.

Sorry for the noise. =]

I've also switch the comment block to use a \brief tag and not duplicate
the name.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168996 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/TinyPtrVector.h
147d9e05116518461653695a6022f6109f0eb936 01-Aug-2012 Chandler Carruth <chandlerc@gmail.com> Add range erase, element insert, and range insert methods to
TinyPtrVector. With these, it is sufficiently functional for my more
normal / pedestrian uses.

I've not included some r-value reference stuff here because the value
type for a TinyPtrVector is, necessarily, just a pointer.

I've added tests that cover the basic behavior of these routines, but
they aren't as comprehensive as I'd like. In particular, they don't
really test the iterator semantics as thoroughly as they should. Maybe
some brave soul will feel enterprising and flesh them out. ;]

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161104 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/TinyPtrVector.h
0b1bcbf6b87f19402d8aef1ef9f6e527a07de9d4 01-Aug-2012 Chandler Carruth <chandlerc@gmail.com> Add basic in-bounds asserts to TinyPtrVector::erase.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161103 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/TinyPtrVector.h
06bd8ca8c276d9bc20b192188224e1e5215666a0 31-Jul-2012 Chandler Carruth <chandlerc@gmail.com> Implement copy and move assignment for TinyPtrVector. These try to
re-use allocated vectors as much as possible.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161041 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/TinyPtrVector.h
b4c28fc93f5149a0bd7967af44c429412e751c56 31-Jul-2012 Chandler Carruth <chandlerc@gmail.com> Clean up trailing whitespace and unnecessary blank lines.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161025 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/TinyPtrVector.h
40dab1059e72d3af59f2523fa8a7d05f40dafca5 31-Jul-2012 Chandler Carruth <chandlerc@gmail.com> Bring TinyPtrVector under test. Somehow we never picked up unit tests
for this class. These tests exercise most of the basic properties, but
the API for TinyPtrVector is very strange currently. My plan is to start
fleshing out the API to match that of SmallVector, but I wanted a test
for what is there first.

Sadly, it doesn't look reasonable to just re-use the SmallVector tests,
as this container can only ever store pointers, and much of the
SmallVector testing is to get construction and destruction right.

Just to get this basic test working, I had to add value_type to the
interface.

While here I found a subtle bug in the combination of 'erase', 'begin',
and 'end'. Both 'begin' and 'end' wanted to use a null pointer to
indicate the "end" iterator of an empty vector, regardless of whether
there is actually a vector allocated or the pointer union is null.
Everything else was fine with this except for erase. If you erase the
last element of a vector after it has held more than one element, we
return the end iterator of the underlying SmallVector which need not be
a null pointer. Instead, simply use the pointer, and poniter + size()
begin/end definitions in the tiny case, and delegate to the inner vector
whenever it is present.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161024 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/TinyPtrVector.h
2edc74aa1fb541253f4286a70194960dab69506b 28-May-2012 Chris Lattner <sabre@nondot.org> add some helper methods to make the type more uniform.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157554 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/TinyPtrVector.h
ac5802bca0285eee49c1c372846552823d819181 19-May-2012 Benjamin Kramer <benny.kra@googlemail.com> Provide move semantics for TinyPtrVector and for DenseMap's rehash function.

This makes DenseMap<..., TinyPtrVector<...>> as cheap as it always should've been!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157113 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/TinyPtrVector.h
bb9dbb7d6b4f39b74b755795e31b219a5518dd77 07-Mar-2012 Eli Friedman <eli.friedman@gmail.com> Missing change in r152106 for TinyPtrVector.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152201 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/TinyPtrVector.h
e6f1355c38fb66b0bee35cb4d6ec93f07196d961 06-Mar-2012 Benjamin Kramer <benny.kra@googlemail.com> Remove excess const, a const_iterator shouldn't be const itself.

Fixes 1242 warnings from gcc during clang build.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152120 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/TinyPtrVector.h
bb07f21c76f011d8dde491104ff242af30bfb4ab 06-Mar-2012 Argyrios Kyrtzidis <akyrtzi@gmail.com> [TinyPtrVector] Add erase method and const-goodness.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152107 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/TinyPtrVector.h
0db235a2b0ed6ae5c3c870012061906054b6dbc4 06-Mar-2012 Argyrios Kyrtzidis <akyrtzi@gmail.com> PointerUnion::getAddrOf() does not need to be template since we can only
use the first pointer type for it. Rename it to getAddrOfPtr1().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152106 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/TinyPtrVector.h
266451dd95b12323fad9418df9b217918ec7e9e0 06-Dec-2011 Chris Lattner <sabre@nondot.org> allow TinyPtrVector to implicitly convert to ArrayRef.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145898 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/TinyPtrVector.h
22e522e08640be459f237796009cf7666d6d75e7 18-Jul-2011 Chris Lattner <sabre@nondot.org> various cleanups noticed by Frits


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135396 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/TinyPtrVector.h
1419f9206e6d321e5ccd8ae99a63d5cb98493bb5 18-Jul-2011 Chris Lattner <sabre@nondot.org> remove pasto


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135394 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/TinyPtrVector.h
79976a40728c8baa8cd16de90173fe2c48937e22 18-Jul-2011 Chris Lattner <sabre@nondot.org> add iteration support to TinyPtrVector for clang's use.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135367 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/TinyPtrVector.h
840635741f132a9a10f052cbf3b21e14bc74835a 18-Jul-2011 Chris Lattner <sabre@nondot.org> fix a warning in TinyPtrVector, adopt it in SSAUpdater, saving some
mallocs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/TinyPtrVector.h
9d69d4aadd4a58aba5634d5c3d2c2a6d8d284134 18-Jul-2011 Chris Lattner <sabre@nondot.org> introduce a new TinyPtrVector class.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135365 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/TinyPtrVector.h