diff options
| author | 2017-01-14 19:55:43 +0000 | |
|---|---|---|
| committer | 2017-01-14 19:55:43 +0000 | |
| commit | bd3306aecb3a15e8967143b8cdbbccf2b1b19b74 (patch) | |
| tree | 309a8132b44564b9e634c0da6815187ce8eab27c /gnu/llvm/tools/clang/lib/Frontend/MultiplexConsumer.cpp | |
| parent | killp -a should not kill the window if only one pane. (diff) | |
| download | wireguard-openbsd-bd3306aecb3a15e8967143b8cdbbccf2b1b19b74.tar.xz wireguard-openbsd-bd3306aecb3a15e8967143b8cdbbccf2b1b19b74.zip | |
Import LLVM 3.9.1 including clang and lld.
Diffstat (limited to 'gnu/llvm/tools/clang/lib/Frontend/MultiplexConsumer.cpp')
| -rw-r--r-- | gnu/llvm/tools/clang/lib/Frontend/MultiplexConsumer.cpp | 36 |
1 files changed, 20 insertions, 16 deletions
diff --git a/gnu/llvm/tools/clang/lib/Frontend/MultiplexConsumer.cpp b/gnu/llvm/tools/clang/lib/Frontend/MultiplexConsumer.cpp index f8b73e9034b..17cdaee4be0 100644 --- a/gnu/llvm/tools/clang/lib/Frontend/MultiplexConsumer.cpp +++ b/gnu/llvm/tools/clang/lib/Frontend/MultiplexConsumer.cpp @@ -125,6 +125,8 @@ public: void FunctionDefinitionInstantiated(const FunctionDecl *D) override; void DeclarationMarkedUsed(const Decl *D) override; void DeclarationMarkedOpenMPThreadPrivate(const Decl *D) override; + void DeclarationMarkedOpenMPDeclareTarget(const Decl *D, + const Attr *Attr) override; void RedefinedHiddenDefinition(const NamedDecl *D, Module *M) override; void AddedAttributeToRecord(const Attr *Attr, const RecordDecl *Record) override; @@ -219,6 +221,11 @@ void MultiplexASTMutationListener::DeclarationMarkedOpenMPThreadPrivate( for (size_t i = 0, e = Listeners.size(); i != e; ++i) Listeners[i]->DeclarationMarkedOpenMPThreadPrivate(D); } +void MultiplexASTMutationListener::DeclarationMarkedOpenMPDeclareTarget( + const Decl *D, const Attr *Attr) { + for (auto *L : Listeners) + L->DeclarationMarkedOpenMPDeclareTarget(D, Attr); +} void MultiplexASTMutationListener::RedefinedHiddenDefinition(const NamedDecl *D, Module *M) { for (auto *L : Listeners) @@ -272,9 +279,9 @@ bool MultiplexConsumer::HandleTopLevelDecl(DeclGroupRef D) { return Continue; } -void MultiplexConsumer::HandleInlineMethodDefinition(CXXMethodDecl *D) { +void MultiplexConsumer::HandleInlineFunctionDefinition(FunctionDecl *D) { for (auto &Consumer : Consumers) - Consumer->HandleInlineMethodDefinition(D); + Consumer->HandleInlineFunctionDefinition(D); } void MultiplexConsumer::HandleCXXStaticMemberVarInstantiation(VarDecl *VD) { @@ -317,24 +324,14 @@ void MultiplexConsumer::HandleImplicitImportDecl(ImportDecl *D) { Consumer->HandleImplicitImportDecl(D); } -void MultiplexConsumer::HandleLinkerOptionPragma(llvm::StringRef Opts) { - for (auto &Consumer : Consumers) - Consumer->HandleLinkerOptionPragma(Opts); -} - -void MultiplexConsumer::HandleDetectMismatch(llvm::StringRef Name, llvm::StringRef Value) { - for (auto &Consumer : Consumers) - Consumer->HandleDetectMismatch(Name, Value); -} - -void MultiplexConsumer::HandleDependentLibrary(llvm::StringRef Lib) { +void MultiplexConsumer::CompleteTentativeDefinition(VarDecl *D) { for (auto &Consumer : Consumers) - Consumer->HandleDependentLibrary(Lib); + Consumer->CompleteTentativeDefinition(D); } -void MultiplexConsumer::CompleteTentativeDefinition(VarDecl *D) { +void MultiplexConsumer::AssignInheritanceModel(CXXRecordDecl *RD) { for (auto &Consumer : Consumers) - Consumer->CompleteTentativeDefinition(D); + Consumer->AssignInheritanceModel(RD); } void MultiplexConsumer::HandleVTable(CXXRecordDecl *RD) { @@ -355,6 +352,13 @@ void MultiplexConsumer::PrintStats() { Consumer->PrintStats(); } +bool MultiplexConsumer::shouldSkipFunctionBody(Decl *D) { + bool Skip = true; + for (auto &Consumer : Consumers) + Skip = Skip && Consumer->shouldSkipFunctionBody(D); + return Skip; +} + void MultiplexConsumer::InitializeSema(Sema &S) { for (auto &Consumer : Consumers) if (SemaConsumer *SC = dyn_cast<SemaConsumer>(Consumer.get())) |
