llvm-project/clang-tools-extra
Sam McCall e3559eee63 [clangd] Optimize "don't include me" check.
Summary:
llvm::Regex is really slow, and regex evaluation during preamble indexing was
showing up as 25% on a profile of clangd in a codebase with large preambles.

Reviewers: ilya-biryukov

Subscribers: MaskRay, jkorous, arphaman, kadircet, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D61120

llvm-svn: 359214
2019-04-25 17:47:07 +00:00
..
clang-apply-replacements [clang-tidy] Add fix descriptions to clang-tidy checks. 2019-04-17 12:53:59 +00:00
clang-change-namespace Rename directory housing clang-change-namespace to be eponymous 2019-03-15 11:54:01 +00:00
clang-doc [clang-doc] Build as clang_tool 2019-03-29 16:56:36 +00:00
clang-include-fixer Rename directory housing clang-include-fixer to be eponymous 2019-03-25 14:09:10 +00:00
clang-move Basic: Return a reference from FileManager::getVirtualFileSystem, NFC 2019-03-26 22:32:06 +00:00
clang-query gn build: Add build files for some clang-tools-extra 2019-03-20 16:14:16 +00:00
clang-reorder-fields gn build: Add build files for some clang-tools-extra 2019-03-20 16:14:16 +00:00
clang-tidy [clang-tidy] Add new checker: llvm-prefer-isa-or-dyn-cast-in-conditionals 2019-04-24 21:25:57 +00:00
clang-tidy-vs Fix typos throughout the license files that somehow I and my reviewers 2019-01-21 09:52:34 +00:00
clangd [clangd] Optimize "don't include me" check. 2019-04-25 17:47:07 +00:00
docs [clang-tidy] Add new checker: llvm-prefer-isa-or-dyn-cast-in-conditionals 2019-04-24 21:25:57 +00:00
modularize Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
pp-trace [pp-trace] Use ClangTool in pp-trace, NFC 2019-03-25 12:49:46 +00:00
test [clangd] Use JSON streaming API for Trace rather than pasting strings. NFC 2019-04-25 16:37:07 +00:00
tool-template Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
unittests [Testing] Move clangd::Annotations to llvm testing support 2019-04-25 10:08:31 +00:00
.arcconfig [clang-tools-extra] Set up .arcconfig to point to new Diffusion CTE repository 2017-11-27 15:58:25 +00:00
.gitignore
CMakeLists.txt [clangd][xpc][cmake] Respect explicit value of CLANGD_BUILD_XPC 2019-03-26 03:48:25 +00:00
CODE_OWNERS.TXT Remove myself as owner of clang-query. 2018-11-15 22:02:10 +00:00
LICENSE.TXT Fix typos throughout the license files that somehow I and my reviewers 2019-01-21 09:52:34 +00:00
README.txt

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/