diff options
author | Daniel Dunbar <daniel@zuster.org> | 2012-02-29 03:04:05 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2012-02-29 03:04:05 +0000 |
commit | d6d74c37ecfe2e81027fbac05853e2337b348882 (patch) | |
tree | c3f7bb182a2f229f490346c89470fb121b0ea540 | |
parent | a5acaa3ca8480da57476084667f8189d4986e3c7 (diff) | |
download | bcm5719-llvm-d6d74c37ecfe2e81027fbac05853e2337b348882.tar.gz bcm5719-llvm-d6d74c37ecfe2e81027fbac05853e2337b348882.zip |
Sema/ObjC: Override search can generate a large search list, bump the base size
of the SmallPtrSet way up to avoid commonly reallocating the buffer size.
- I didn't see a good argument against it, so I bumped the limit to cover the
max size we see during parsing Cocoa.h.
llvm-svn: 151698
-rw-r--r-- | clang/lib/Sema/SemaDeclObjC.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/clang/lib/Sema/SemaDeclObjC.cpp b/clang/lib/Sema/SemaDeclObjC.cpp index fe210c5dc23..9b492600ca1 100644 --- a/clang/lib/Sema/SemaDeclObjC.cpp +++ b/clang/lib/Sema/SemaDeclObjC.cpp @@ -2504,10 +2504,11 @@ namespace { /// A helper class for searching for methods which a particular method /// overrides. class OverrideSearch { +public: Sema &S; ObjCMethodDecl *Method; - llvm::SmallPtrSet<ObjCContainerDecl*, 8> Searched; - llvm::SmallPtrSet<ObjCMethodDecl*, 8> Overridden; + llvm::SmallPtrSet<ObjCContainerDecl*, 128> Searched; + llvm::SmallPtrSet<ObjCMethodDecl*, 4> Overridden; bool Recursive; public: @@ -2539,7 +2540,7 @@ public: searchFromContainer(container); } - typedef llvm::SmallPtrSet<ObjCMethodDecl*,8>::iterator iterator; + typedef llvm::SmallPtrSet<ObjCMethodDecl*, 128>::iterator iterator; iterator begin() const { return Overridden.begin(); } iterator end() const { return Overridden.end(); } |