llvm-project/clang-tools-extra/clangd/index
Sam McCall bca624ab03 [clangd] Fix threading bugs in (not-yet-used) BackgroundIndex, re-enable test.
Summary:
One relatively boring bug: forgot to notify the CV after enqueue.

One much more fun bug: the thread member could access instance variables before
they were initialized. Although the thread was last in the init list, QueueCV
etc were listed after Thread in the class, so their default constructors raced
with the thread itself.
We have to get very unlucky to lose this race, I saw it 0.02% of the time.

Reviewers: ioeric

Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, jfb, cfe-commits

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

llvm-svn: 344595
2018-10-16 09:05:13 +00:00
..
dex [clangd] Optionally use dex for the preamble parts of the dynamic index. 2018-10-16 08:53:52 +00:00
Background.cpp [clangd] Fix threading bugs in (not-yet-used) BackgroundIndex, re-enable test. 2018-10-16 09:05:13 +00:00
Background.h [clangd] Fix threading bugs in (not-yet-used) BackgroundIndex, re-enable test. 2018-10-16 09:05:13 +00:00
CanonicalIncludes.cpp [clangd] NFC: Migrate to LLVM STLExtras API where possible 2018-10-07 14:49:41 +00:00
CanonicalIncludes.h [clangd] Get rid of regexes in CanonicalIncludes 2018-08-22 13:51:19 +00:00
FileIndex.cpp [clangd] Optionally use dex for the preamble parts of the dynamic index. 2018-10-16 08:53:52 +00:00
FileIndex.h [clangd] Optionally use dex for the preamble parts of the dynamic index. 2018-10-16 08:53:52 +00:00
Index.cpp [clangd] fix miscompiling lower_bound call 2018-10-09 13:24:50 +00:00
Index.h [clangd] Use SyncAPI in more places in tests. NFC 2018-10-15 15:04:03 +00:00
IndexAction.cpp [clangd] NFC fix semicolon warning 2018-10-12 17:47:43 +00:00
IndexAction.h [clangd] clangd-indexer gathers refs and stores them in index files. 2018-10-04 14:09:55 +00:00
MemIndex.cpp [clangd] Initial supoprt for cross-namespace global code completion. 2018-09-27 18:46:00 +00:00
MemIndex.h [clangd] Add symbol slab size to index memory consumption estimates 2018-09-10 11:46:07 +00:00
Merge.cpp [clangd] Remove an unused include header, NFC. 2018-10-15 12:39:45 +00:00
Merge.h [clangd] expose MergedIndex class 2018-10-04 14:20:22 +00:00
Serialization.cpp [clangd] NFC: Migrate to LLVM STLExtras API where possible 2018-10-07 14:49:41 +00:00
Serialization.h [clangd] clangd-indexer gathers refs and stores them in index files. 2018-10-04 14:09:55 +00:00
SymbolCollector.cpp [clangd] Fix some references missing in dynamic index. 2018-10-15 11:46:26 +00:00
SymbolCollector.h [clangd] Extract mapper logic from clangd-indexer into a library. 2018-09-25 20:02:36 +00:00
YAMLSerialization.cpp [clangd] Fix an accident change in r342999. 2018-10-09 15:16:14 +00:00