From 7f55c258c638431e6dbe3e8fc53a40d409192c4b Mon Sep 17 00:00:00 2001 From: John McCall Date: Thu, 2 Sep 2010 21:55:03 +0000 Subject: After some discussion with djg, teach SmallVector to grow from a zero capacity and remove the workaround in SmallVector. There are some theoretical benefits to a N->2N+1 growth policy anyway. llvm-svn: 112870 --- llvm/lib/Support/SmallVector.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'llvm/lib/Support') diff --git a/llvm/lib/Support/SmallVector.cpp b/llvm/lib/Support/SmallVector.cpp index 2e17af86415..a89f1495763 100644 --- a/llvm/lib/Support/SmallVector.cpp +++ b/llvm/lib/Support/SmallVector.cpp @@ -18,7 +18,7 @@ using namespace llvm; /// on POD-like datatypes and is out of line to reduce code duplication. void SmallVectorBase::grow_pod(size_t MinSizeInBytes, size_t TSize) { size_t CurSizeBytes = size_in_bytes(); - size_t NewCapacityInBytes = 2 * capacity_in_bytes(); + size_t NewCapacityInBytes = 2 * capacity_in_bytes() + TSize; // Always grow. if (NewCapacityInBytes < MinSizeInBytes) NewCapacityInBytes = MinSizeInBytes; -- cgit v1.2.3