llvm-project/clang-tools-extra
Samuel Benzaquen 7663d3be15 Speed up check by using a recursive visitor.
Summary:
Use a recursive visitor instead of forEachDescendant() matcher.
The latter requires several layers of virtual function calls for each node and
it is more expensive than the visitor.
Benchmark results show improvement of ~6% walltime in clang-tidy.

Reviewers: alexfh

Subscribers: cfe-commits

Differential Revision: http://reviews.llvm.org/D20597

llvm-svn: 270714
2016-05-25 16:19:23 +00:00
..
clang-apply-replacements Remove autoconf support 2016-01-26 21:31:36 +00:00
clang-query Fix Clang-tidy modernize-deprecated-headers warnings; other minor fixes. 2016-03-17 17:02:25 +00:00
clang-rename clang-rename: fix renaming non-members variables when referenced as macro arguments 2016-05-24 19:08:53 +00:00
clang-tidy Speed up check by using a recursive visitor. 2016-05-25 16:19:23 +00:00
docs Fix docs 2016-05-20 22:42:03 +00:00
include-fixer [include-fixer] /usr/include/xlocal.h to include/xlocal.h in hardcoded map. 2016-05-25 14:17:09 +00:00
modularize Fixed some cases in the modularize assistant mode where header file names didn't translate to valid module names. 2016-03-21 23:05:14 +00:00
pp-trace Fix Clang-tidy modernize-deprecated-headers warnings; other minor fixes. 2016-03-17 17:02:25 +00:00
test [clang-tidy] Fix typo in test file name. 2016-05-25 09:44:35 +00:00
tool-template Remove autoconf support 2016-01-26 21:31:36 +00:00
unittests [find-all-symbols] Added hardcode header mapping from header postfix to header name for STL symbols. 2016-05-24 15:10:58 +00:00
.arcconfig Update arc config to new domain. 2014-04-07 10:23:19 +00:00
.gitignore .gitignore: ignore docs/_build 2013-03-03 15:15:12 +00:00
CMakeLists.txt [include-fixer] Add a prototype for a new include fixing tool. 2016-04-20 12:43:43 +00:00
CODE_OWNERS.TXT Updating the code owners list. 2015-09-02 20:00:41 +00:00
LICENSE.TXT Update copyright year to 2016. 2016-03-30 22:38:47 +00:00
README.txt Update references to new lists.llvm.org mailing lists. 2015-08-05 03:56:44 +00:00

README.txt

//===----------------------------------------------------------------------===//
// Clang Tools repository
//===----------------------------------------------------------------------===//

Welcome to the repository of extra Clang Tools.  This repository holds tools
that are developed as part of the LLVM compiler infrastructure project and the
Clang frontend.  These tools are kept in a separate "extra" repository to
allow lighter weight checkouts of the core Clang codebase.

This repository is only intended to be checked out inside of a full LLVM+Clang
tree, and in the 'tools/extra' subdirectory of the Clang checkout.

All discussion regarding Clang, Clang-based tools, and code in this repository
should be held using the standard Clang mailing lists:
  http://lists.llvm.org/mailman/listinfo/cfe-dev

Code review for this tree should take place on the standard Clang patch and
commit lists:
  http://lists.llvm.org/mailman/listinfo/cfe-commits

If you find a bug in these tools, please file it in the LLVM bug tracker:
  http://llvm.org/bugs/