with new/delete. With disable-free, this reduces the number of 4/8 byte
mallocs from 4793/1541 to 865/456 and also drops other sizes as well.
This is a very small perf win, nothing major.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65171
91177308-0d34-0410-b5e6-
96231b3b80d8
//===----------------------------------------------------------------------===//
void ObjCListBase::Destroy(ASTContext &Ctx) {
- delete[] List;
+ Ctx.Deallocate(List);
NumElts = 0;
List = 0;
}
assert(List == 0 && "Elements already set!");
if (Elts == 0) return; // Setting to an empty list is a noop.
- List = new void*[Elts];
+
+ List = new (Ctx) void*[Elts];
NumElts = Elts;
memcpy(List, InList, sizeof(void*)*Elts);
}