summaryrefslogtreecommitdiff
path: root/lib/Serialization/ASTWriterDecl.cpp
diff options
context:
space:
mode:
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>2012-05-09 16:12:57 +0000
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>2012-05-09 16:12:57 +0000
commite15db6f0d226a3bc88d244512d1004c7c1c07391 (patch)
tree8590e0ea1c3cf7e70148a88aae33621890c890c2 /lib/Serialization/ASTWriterDecl.cpp
parent08a9ae95ba7e0a87e667f97ccc5bac646df9a705 (diff)
downloadclang-e15db6f0d226a3bc88d244512d1004c7c1c07391.tar.gz
clang-e15db6f0d226a3bc88d244512d1004c7c1c07391.tar.bz2
clang-e15db6f0d226a3bc88d244512d1004c7c1c07391.tar.xz
[AST/libclang] Speed up clang_getOverriddenCursors() considerably by reserving a bit
in ObjCMethodDecl to indicate whether the method does not override any other method, which is the majority of cases. That way we can avoid unnecessary work doing lookups, especially when PCH is involved. rdar://11360082 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156476 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Serialization/ASTWriterDecl.cpp')
-rw-r--r--lib/Serialization/ASTWriterDecl.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/Serialization/ASTWriterDecl.cpp b/lib/Serialization/ASTWriterDecl.cpp
index ee30dd8ea9..86b667ad71 100644
--- a/lib/Serialization/ASTWriterDecl.cpp
+++ b/lib/Serialization/ASTWriterDecl.cpp
@@ -417,6 +417,7 @@ void ASTDeclWriter::VisitObjCMethodDecl(ObjCMethodDecl *D) {
Record.push_back(D->isVariadic());
Record.push_back(D->isSynthesized());
Record.push_back(D->isDefined());
+ Record.push_back(D->IsOverriding);
Record.push_back(D->IsRedeclaration);
Record.push_back(D->HasRedeclaration);