summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaDecl.cpp
diff options
context:
space:
mode:
authorAndrew V. Tischenko <andrew.v.tischenko@gmail.com>2018-04-10 10:34:13 +0000
committerAndrew V. Tischenko <andrew.v.tischenko@gmail.com>2018-04-10 10:34:13 +0000
commitc88deb100f1d4a1d14dbcc42de01d325919ebec6 (patch)
tree36fe084ef5681b5e643f8eb90483a14f00df70d4 /clang/lib/Sema/SemaDecl.cpp
parent037d3b20d3c0d9ea5c90aec9de3a5257d46b70c9 (diff)
downloadbcm5719-llvm-c88deb100f1d4a1d14dbcc42de01d325919ebec6.tar.gz
bcm5719-llvm-c88deb100f1d4a1d14dbcc42de01d325919ebec6.zip
-ftime-report switch support in Clang.
The current support of the feature produces only 2 lines in report: -Some general Code Generation Time; -Total time of Backend Consumer actions. This patch extends Clang time report with new lines related to Preprocessor, Include Filea Search, Parsing, etc. Differential Revision: https://reviews.llvm.org/D43578 llvm-svn: 329684
Diffstat (limited to 'clang/lib/Sema/SemaDecl.cpp')
-rw-r--r--clang/lib/Sema/SemaDecl.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp
index 9228d65250c..6ed2c9ee805 100644
--- a/clang/lib/Sema/SemaDecl.cpp
+++ b/clang/lib/Sema/SemaDecl.cpp
@@ -44,6 +44,7 @@
#include "clang/Sema/Template.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/Triple.h"
+#include "llvm/Support/Timer.h"
#include <algorithm>
#include <cstring>
#include <functional>
@@ -849,6 +850,8 @@ Sema::ClassifyName(Scope *S, CXXScopeSpec &SS, IdentifierInfo *&Name,
SourceLocation NameLoc, const Token &NextToken,
bool IsAddressOfOperand,
std::unique_ptr<CorrectionCandidateCallback> CCC) {
+ llvm::NamedRegionTimer T("classifyname", "Classify Name", GroupName,
+ GroupDescription, llvm::TimePassesIsEnabled);
DeclarationNameInfo NameInfo(Name, NameLoc);
ObjCMethodDecl *CurMethod = getCurMethodDecl();
@@ -5321,6 +5324,8 @@ bool Sema::diagnoseQualifiedDeclaration(CXXScopeSpec &SS, DeclContext *DC,
NamedDecl *Sema::HandleDeclarator(Scope *S, Declarator &D,
MultiTemplateParamsArg TemplateParamLists) {
+ llvm::NamedRegionTimer T("handledeclarator", "Handle Declarator", GroupName,
+ GroupDescription, llvm::TimePassesIsEnabled);
// TODO: consider using NameInfo for diagnostic.
DeclarationNameInfo NameInfo = GetNameForDeclarator(D);
DeclarationName Name = NameInfo.getName();
OpenPOWER on IntegriCloud