diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2016-05-16 21:57:47 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2016-05-16 21:57:47 +0000 |
commit | 0e8720653ed386e69b7c125aff787a75d41d6c4a (patch) | |
tree | 51c378077159b4158a8f22282f8f8a48b6337f2c | |
parent | 39e360398d33a76471c49a46a5910e1b368b470b (diff) | |
download | bcm5719-llvm-0e8720653ed386e69b7c125aff787a75d41d6c4a.tar.gz bcm5719-llvm-0e8720653ed386e69b7c125aff787a75d41d6c4a.zip |
Add a (size, value) constructor to TinyPtrVector.
llvm-svn: 269711
-rw-r--r-- | llvm/include/llvm/ADT/TinyPtrVector.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/llvm/include/llvm/ADT/TinyPtrVector.h b/llvm/include/llvm/ADT/TinyPtrVector.h index bbe3f009b0b..605f0e70a85 100644 --- a/llvm/include/llvm/ADT/TinyPtrVector.h +++ b/llvm/include/llvm/ADT/TinyPtrVector.h @@ -104,8 +104,16 @@ public: /// This also is a constructor for individual array elements due to the single /// element constructor for ArrayRef. explicit TinyPtrVector(ArrayRef<EltTy> Elts) - : Val(Elts.size() == 1 ? PtrUnion(Elts[0]) - : PtrUnion(new VecTy(Elts.begin(), Elts.end()))) {} + : Val(Elts.empty() + ? PtrUnion() + : Elts.size() == 1 + ? PtrUnion(Elts[0]) + : PtrUnion(new VecTy(Elts.begin(), Elts.end()))) {} + + TinyPtrVector(size_t Count, EltTy Value) + : Val(Count == 0 ? PtrUnion() + : Count == 1 ? PtrUnion(Value) + : PtrUnion(new VecTy(Count, Value))) {} // implicit conversion operator to ArrayRef. operator ArrayRef<EltTy>() const { |