llvm-project/clang-tools-extra/clangd/unittests
Kadir Cetinkaya 70674549f1 [clangd] Count number of references while merging RefSlabs inside FileIndex
Summary:
For counting number of references clangd was relying on merging every
duplication of a symbol. Unfortunately this does not apply to FileIndex(and one
of its users' BackgroundIndex), since we get rid of duplication by simply
dropping symbols coming from non-canonical locations. So only one or two(coming
from canonical declaration header and defined source file, if exists)
replications of the same symbol reaches merging step.

This patch changes reference counting logic to rather count number of different
RefSlabs a given SymbolID exists.

Reviewers: ilya-biryukov

Subscribers: ioeric, MaskRay, jkorous, mgrang, arphaman, jdoerfert, cfe-commits

Tags: #clang

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

llvm-svn: 360344
2019-05-09 14:22:07 +00:00
..
xpc [clangd][xpc] Fix XPC unittests 2019-04-29 19:41:30 +00:00
Annotations.cpp
Annotations.h
BackgroundIndexTests.cpp [clangd] Count number of references while merging RefSlabs inside FileIndex 2019-05-09 14:22:07 +00:00
CMakeLists.txt [clangd] Introduce intermediate representation of formatted text 2019-05-07 14:18:18 +00:00
CancellationTests.cpp
CanonicalIncludesTests.cpp [clangd] Add separate unit tests for CanonicalIncludes. NFC 2019-04-29 14:36:26 +00:00
ClangdTests.cpp
ClangdUnitTests.cpp [clangd] Qualify uses of ::testing everywhere. NFC 2019-05-06 10:08:47 +00:00
CodeCompleteTests.cpp [clangd] Expose whether no-compile completion was used. 2019-05-06 12:03:26 +00:00
CodeCompletionStringsTests.cpp
ContextTests.cpp
DexTests.cpp [clangd] Qualify uses of ::testing everywhere. NFC 2019-05-06 10:08:47 +00:00
DiagnosticsTests.cpp [clangd] Qualify uses of ::testing everywhere. NFC 2019-05-06 10:08:47 +00:00
DraftStoreTests.cpp
ExpectedTypeTest.cpp
FSTests.cpp
FileDistanceTests.cpp
FileIndexTests.cpp [clangd] Count number of references while merging RefSlabs inside FileIndex 2019-05-09 14:22:07 +00:00
FindSymbolsTests.cpp [clangd] Qualify uses of ::testing everywhere. NFC 2019-05-06 10:08:47 +00:00
FormattedStringTests.cpp [clangd] Introduce intermediate representation of formatted text 2019-05-07 14:18:18 +00:00
FunctionTests.cpp
FuzzyMatchTests.cpp [clangd] Qualify uses of ::testing everywhere. NFC 2019-05-06 10:08:47 +00:00
GlobalCompilationDatabaseTests.cpp
HeadersTests.cpp
IndexActionTests.cpp [clangd] Qualify uses of ::testing everywhere. NFC 2019-05-06 10:08:47 +00:00
IndexTests.cpp [clangd] Qualify uses of ::testing everywhere. NFC 2019-05-06 10:08:47 +00:00
JSONTransportTests.cpp
Matchers.h
PrintASTTests.cpp Fix gcc compilation warning in test case [NFC] 2019-05-09 12:12:35 +00:00
QualityTests.cpp [clangd] Boost code completion results that were named in the last few lines. 2019-05-06 10:25:10 +00:00
RIFFTests.cpp
RenameTests.cpp [clangd] Add test that r360116 accidentally fixed a duplicate-edits bug in rename. NFC 2019-05-07 07:45:41 +00:00
SelectionTests.cpp
SerializationTests.cpp [clangd] Qualify uses of ::testing everywhere. NFC 2019-05-06 10:08:47 +00:00
SourceCodeTests.cpp [clangd] Boost code completion results that were named in the last few lines. 2019-05-06 10:25:10 +00:00
SymbolCollectorTests.cpp [clangd] Qualify uses of ::testing everywhere. NFC 2019-05-06 10:08:47 +00:00
SymbolInfoTests.cpp [clangd] Qualify uses of ::testing everywhere. NFC 2019-05-06 10:08:47 +00:00
SyncAPI.cpp
SyncAPI.h
TUSchedulerTests.cpp [clangd] Fix a TSAN warning in TUSchedulerTests 2019-05-09 12:21:28 +00:00
TestFS.cpp
TestFS.h
TestIndex.cpp
TestIndex.h
TestScheme.h
TestTU.cpp
TestTU.h
ThreadingTests.cpp
TraceTests.cpp
TweakTests.cpp
TypeHierarchyTests.cpp [clangd] Qualify uses of ::testing everywhere. NFC 2019-05-06 10:08:47 +00:00
URITests.cpp
XRefsTests.cpp [clangd] Qualify uses of ::testing everywhere. NFC 2019-05-06 10:08:47 +00:00
lit.cfg.py [clangd] Restore conventional names for lit configs, and .in/.py split. Fix build_mode indirection. 2019-05-02 08:00:39 +00:00
lit.site.cfg.py.in [clangd] Restore conventional names for lit configs, and .in/.py split. Fix build_mode indirection. 2019-05-02 08:00:39 +00:00