llvm-project/clang/unittests/Lex
Alex Lorenz ca6e60971e [clang-scan-deps] add skip excluded conditional preprocessor block preprocessing optimization
This commit adds an optimization to clang-scan-deps and clang's preprocessor that skips excluded preprocessor
blocks by bumping the lexer pointer, and not lexing the tokens until reaching appropriate #else/#endif directive.
The skip positions and lexer offsets are computed when the file is minimized, directly from the minimized tokens.

On an 18-core iMacPro with macOS Catalina Beta I got 10-15% speed-up from this optimization when running clang-scan-deps on
the compilation database for a recent LLVM and Clang (3511 files).

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

llvm-svn: 371656
2019-09-11 20:40:31 +00:00
..
CMakeLists.txt cmake: Add CLANG_LINK_CLANG_DYLIB option 2019-07-03 22:45:55 +00:00
DependencyDirectivesSourceMinimizerTest.cpp [clang-scan-deps] add skip excluded conditional preprocessor block preprocessing optimization 2019-09-11 20:40:31 +00:00
HeaderMapTest.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
HeaderSearchTest.cpp Introduce a DirectoryEntryRef that stores both a reference and an 2019-08-31 01:26:04 +00:00
LexerTest.cpp [Clang] Migrate llvm::make_unique to std::make_unique 2019-08-14 23:04:18 +00:00
PPCallbacksTest.cpp Introduce a DirectoryEntryRef that stores both a reference and an 2019-08-31 01:26:04 +00:00
PPConditionalDirectiveRecordTest.cpp Modules: Rename MemoryBufferCache to InMemoryModuleCache 2019-03-09 17:33:56 +00:00