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
|