[PATCH] D50337: [clangd] DexIndex implementation prototype

2018-08-06 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev created this revision. kbobyrev added reviewers: ioeric, ilya-biryukov. kbobyrev added a project: clang-tools-extra. Herald added subscribers: arphaman, mgrang, jkorous, MaskRay, mgorny. This patch is a proof-of-concept Dex index implementation. It has several flaws, which don't allow re

[PATCH] D50337: [clangd] DexIndex implementation prototype

2018-08-06 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev planned changes to this revision. kbobyrev added a comment. The patch is currently in preview-mode; I have to make few changes: - Improve testing infrastructure; one possible way would be to use exactly the same code `MemIndex` currently does as it is meant to be a drop-in replacement.

[PATCH] D50337: [clangd] DexIndex implementation prototype

2018-08-07 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 159463. kbobyrev added a comment. Don't resize retrieved symbols vector, simply let callback process at most `MaxCandidateCount` items. https://reviews.llvm.org/D50337 Files: clang-tools-extra/clangd/CMakeLists.txt clang-tools-extra/clangd/index/MemIn

[PATCH] D50337: [clangd] DexIndex implementation prototype

2018-08-07 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev added a comment. As discussed offline, incomplete trigrams (unigrams and bigrams generation) should be a blocker for this patch, because otherwise it isn't functional. Once incomplete trigrams are in, `MemIndex` tests can be reused for `DexIndex` to ensure stability. https://reviews.

[PATCH] D50337: [clangd] DexIndex implementation prototype

2018-08-07 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 159515. kbobyrev added a comment. Continue implementing Proof of Concept Dex-based static index replacement. This diff adds short query processing, the current solution does not utilize iterators framework (unlike the general queries) yet and is a subject t

[PATCH] D50337: [clangd] DexIndex implementation prototype

2018-08-08 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 159658. kbobyrev added a comment. Minor code cleanup. This is now a fully functional symbol index. I have reflected my concerns and uncertainties in `FIXME`s, please indicate if you think there's something to improve in this patch. In general, I believe it

[PATCH] D50500: [clangd] Allow consuming limited number of items

2018-08-09 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev created this revision. kbobyrev added reviewers: ioeric, ilya-biryukov. kbobyrev added a project: clang-tools-extra. Herald added subscribers: arphaman, jkorous, MaskRay. This patch modifies `consume` function to allow retrieval of limited number of symbols. This is the "cheap" implement

[PATCH] D50337: [clangd] DexIndex implementation prototype

2018-08-09 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 159908. kbobyrev marked 15 inline comments as done. kbobyrev added a comment. Address a round of comments. Also put `FIXME`s where appropriate for the future changes. https://reviews.llvm.org/D50337 Files: clang-tools-extra/clangd/CMakeLists.txt clang

[PATCH] D50517: [clangd] Generate incomplete trigrams for the Dex index

2018-08-09 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev created this revision. kbobyrev added reviewers: ioeric, ilya-biryukov. Herald added subscribers: arphaman, jkorous, MaskRay. https://reviews.llvm.org/D50517 Files: clang-tools-extra/clangd/index/dex/Trigram.cpp clang-tools-extra/clangd/index/dex/Trigram.h clang-tools-extra/unittes

[PATCH] D50517: [clangd] Generate incomplete trigrams for the Dex index

2018-08-09 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev planned changes to this revision. kbobyrev added a comment. This patch is in preview mode and can be useful for the discussion. It's not functional yet, but this will be changed in the future. The upcoming changes would allow handling short queries introduced in https://reviews.llvm.or

[PATCH] D50500: [clangd] Allow consuming limited number of items

2018-08-09 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev planned changes to this revision. kbobyrev added a comment. Oops, I thought I pushed "Plan Changes" for this one. https://reviews.llvm.org/D50500 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/

[PATCH] D50500: [clangd] Allow consuming limited number of items

2018-08-09 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 159959. kbobyrev marked 3 inline comments as done. kbobyrev added a comment. Fix the implementation and add test coverage. https://reviews.llvm.org/D50500 Files: clang-tools-extra/clangd/index/dex/Iterator.cpp clang-tools-extra/clangd/index/dex/Iterato

[PATCH] D50517: [clangd] Generate incomplete trigrams for the Dex index

2018-08-10 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 160071. kbobyrev added a comment. Complete the tests, finish the implementation. One thought about prefix match suggestion: we should either make it more explicit for the index (e.g. introduce `prefixMatch` and dispatch `fuzzyMatch` to prefix matching in c

[PATCH] D50517: [clangd] Generate incomplete trigrams for the Dex index

2018-08-10 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev planned changes to this revision. kbobyrev added a comment. As discussed offline with @ilya-biryukov, the better approach would be to prefix match first symbols of each distinct identifier piece instead of prefix matching (just looking at the first letter of the identifier) the whole i

[PATCH] D50517: [clangd] Generate incomplete trigrams for the Dex index

2018-08-10 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 160074. kbobyrev added a comment. @ilya-biryukov I have changed the approach to the one we discussed before. https://reviews.llvm.org/D50517 Files: clang-tools-extra/clangd/index/dex/Trigram.cpp clang-tools-extra/clangd/index/dex/Trigram.h clang-tool

[PATCH] D50517: [clangd] Generate incomplete trigrams for the Dex index

2018-08-10 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 160081. kbobyrev marked 5 inline comments as done. kbobyrev added a comment. Address a round of comments. I have added few comments to get additional feedback before further changes are made. https://reviews.llvm.org/D50517 Files: clang-tools-extra/cla

[PATCH] D50517: [clangd] Generate incomplete trigrams for the Dex index

2018-08-10 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev added inline comments. Comment at: clang-tools-extra/clangd/index/dex/Trigram.cpp:74 +// symbol of the identifier. +if (!FoundFirstSymbol) { + FoundFirstSymbol = true; ioeric wrote: > Could this be pulled out of the loop? I think what we wan

[PATCH] D50517: [clangd] Generate incomplete trigrams for the Dex index

2018-08-10 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev added a comment. In https://reviews.llvm.org/D50517#1194990, @ioeric wrote: > In https://reviews.llvm.org/D50517#1194976, @kbobyrev wrote: > > > As discussed offline with @ilya-biryukov, the better approach would be to > > prefix match first symbols of each distinct identifier piece ins

[PATCH] D50500: [clangd] Allow consuming limited number of items

2018-08-10 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 160088. kbobyrev marked 2 inline comments as done. https://reviews.llvm.org/D50500 Files: clang-tools-extra/clangd/index/dex/Iterator.cpp clang-tools-extra/clangd/index/dex/Iterator.h clang-tools-extra/unittests/clangd/DexIndexTests.cpp Index: clang-

[PATCH] D50500: [clangd] Allow consuming limited number of items

2018-08-10 Thread Kirill Bobyrev via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL339426: [clangd] Allow consuming limited number of items (authored by omtcyfz, committed by ). Herald added a subscriber: llvm-commits. Changed prior to commit: https://reviews.llvm.org/D50500?vs=160088

[PATCH] D50517: [clangd] Generate incomplete trigrams for the Dex index

2018-08-10 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 160093. kbobyrev marked 8 inline comments as done. kbobyrev added a comment. Address issues we discussed with Eric. https://reviews.llvm.org/D50517 Files: clang-tools-extra/clangd/index/dex/Iterator.h clang-tools-extra/clangd/index/dex/Trigram.cpp cl

[PATCH] D50337: [clangd] DexIndex implementation prototype

2018-08-10 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 160104. kbobyrev marked 12 inline comments as done. kbobyrev added a comment. Address most comments. https://reviews.llvm.org/D50337 Files: clang-tools-extra/clangd/CMakeLists.txt clang-tools-extra/clangd/index/dex/DexIndex.cpp clang-tools-extra/clan

[PATCH] D50517: [clangd] Generate incomplete trigrams for the Dex index

2018-08-10 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 160133. kbobyrev marked 7 inline comments as done. kbobyrev added a comment. Address issues we have discussed with Eric. https://reviews.llvm.org/D50517 Files: clang-tools-extra/clangd/index/dex/Iterator.h clang-tools-extra/clangd/index/dex/Trigram.cpp

[PATCH] D50337: [clangd] DexIndex implementation prototype

2018-08-10 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 160146. kbobyrev marked 2 inline comments as done. kbobyrev added a comment. Store symbol qualities (so that it's not computed each time when requested which might be expensive). Use `operator[]` to construct the value for inverted index when key is not ins

[PATCH] D50517: [clangd] Generate incomplete trigrams for the Dex index

2018-08-10 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 160154. kbobyrev marked 7 inline comments as done. kbobyrev added a comment. Address a round of comments. https://reviews.llvm.org/D50517 Files: clang-tools-extra/clangd/index/dex/Iterator.h clang-tools-extra/clangd/index/dex/Trigram.cpp clang-tools-

[PATCH] D50576: [clangd] Allow consumption of DocIDs without overhead

2018-08-10 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev created this revision. kbobyrev added reviewers: ioeric, ilya-biryukov. Herald added subscribers: arphaman, jkorous, MaskRay. This patch allows processing DocIDs from iterator using callback so that they are not stored in a vector if actual DocIDs are not needed. Such overhead is the ca

[PATCH] D50517: [clangd] Generate incomplete trigrams for the Dex index

2018-08-13 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 160302. kbobyrev marked an inline comment as done. kbobyrev edited the summary of this revision. kbobyrev added a comment. Address the post-LGTM comment. https://reviews.llvm.org/D50517 Files: clang-tools-extra/clangd/index/dex/Iterator.h clang-tools-e

[PATCH] D50517: [clangd] Generate incomplete trigrams for the Dex index

2018-08-13 Thread Kirill Bobyrev via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL339548: [clangd] Generate incomplete trigrams for the Dex index (authored by omtcyfz, committed by ). Herald added a subscriber: llvm-commits. Changed prior to commit: https://reviews.llvm.org/D50517?vs

[PATCH] D50337: [clangd] DexIndex implementation prototype

2018-08-13 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev planned changes to this revision. kbobyrev added a comment. As discussed offline, I should update the patch to reflect changes accepted in https://reviews.llvm.org/D50517. https://reviews.llvm.org/D50337 ___ cfe-commits mailing list cfe-co

[PATCH] D50689: [clangd] NFC: Improve Dex Iterators debugging traits

2018-08-14 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev created this revision. kbobyrev added reviewers: ioeric, ilya-biryukov. kbobyrev added a project: clang-tools-extra. Herald added subscribers: arphaman, jkorous, MaskRay. https://reviews.llvm.org/D50689 Files: clang-tools-extra/clangd/index/dex/Iterator.cpp clang-tools-extra/clangd/i

[PATCH] D50700: [clangd] Generate better incomplete bigrams for the Dex index

2018-08-14 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev created this revision. kbobyrev added reviewers: ioeric, ilya-biryukov. kbobyrev added a project: clang-tools-extra. Herald added subscribers: arphaman, jkorous, MaskRay. Currently, the query trigram generator would simply yield `u_p` trigram for the `u_p` query. This is not optimal, sin

[PATCH] D50700: [clangd] Generate better incomplete bigrams for the Dex index

2018-08-14 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 160555. kbobyrev added a comment. Treat leading underscores as additional signals and don't extract two heads in that case. https://reviews.llvm.org/D50700 Files: clang-tools-extra/clangd/index/dex/Trigram.cpp clang-tools-extra/clangd/index/dex/Trigra

[PATCH] D50702: [clangd] NFC: Cleanup clangd help message

2018-08-14 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev created this revision. kbobyrev added reviewers: ioeric, ilya-biryukov. kbobyrev added a project: clang-tools-extra. Herald added subscribers: arphaman, jkorous, MaskRay. Add missed space, fix a typo. https://reviews.llvm.org/D50702 Files: clang-tools-extra/clangd/tool/ClangdMain.cpp

[PATCH] D50702: [clangd] NFC: Cleanup clangd help message

2018-08-14 Thread Kirill Bobyrev via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rCTE339673: [clangd] NFC: Cleanup clangd help message (authored by omtcyfz, committed by ). Changed prior to commit: https://reviews.llvm.org/D50702?vs=160557&id=160558#toc Repository: rCTE Clang Tools

[PATCH] D50703: [clangd] NFC: Mark Workspace Symbol feature complete in the documentation

2018-08-14 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev created this revision. kbobyrev added reviewers: ioeric, ilya-biryukov. kbobyrev added a project: clang-tools-extra. Herald added subscribers: arphaman, jkorous, MaskRay. Workspace Symbol implementation was introduced in https://reviews.llvm.org/D44882 and should be complete now. https

[PATCH] D50337: [clangd] DexIndex implementation prototype

2018-08-14 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 160576. kbobyrev added a comment. Don't separate the logic for "long" and "short" queries: https://reviews.llvm.org/D50517 (https://reviews.llvm.org/rCTE339548) introduced incomplete trigrams which can be used on for "short" queries, too. https://reviews.

[PATCH] D50707: NFC: Enforce good formatting across multiple clang-tools-extra files

2018-08-14 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev created this revision. kbobyrev added reviewers: ioeric, ilya-biryukov. kbobyrev added a project: clang-tools-extra. Herald added subscribers: arphaman, jkorous. This patch improves readability of multiple files in clang-tools-extra and enforces LLVM Coding Guidelines. https://reviews.

[PATCH] D50707: NFC: Enforce good formatting across multiple clang-tools-extra files

2018-08-14 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 160605. kbobyrev added a comment. I have updated the patch so that it only affects comments, header guards and inserts few newlines. Actual source code is not affected so that `git blame` log could be less cryptic. https://reviews.llvm.org/D50707 Files:

[PATCH] D50707: NFC: Enforce good formatting across multiple clang-tools-extra files

2018-08-14 Thread Kirill Bobyrev via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rCTE339687: NFC: Enforce good formatting across multiple clang-tools-extra files (authored by omtcyfz, committed by ). Changed prior to commit: https://reviews.llvm.org/D50707?vs=160605&id=160607#toc Rep

[PATCH] D50839: [llvm] Optimize YAML::isNumeric

2018-08-16 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev created this revision. kbobyrev added reviewers: ilya-biryukov, ioeric. Herald added a reviewer: javed.absar. Herald added a subscriber: kristof.beyls. This patch significantly improves performance of the YAML serializer by optimizing `YAML::isNumeric` function. This function is called o

[PATCH] D50689: [clangd] NFC: Improve Dex Iterators debugging traits

2018-08-16 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161013. kbobyrev marked an inline comment as done. kbobyrev added a comment. Improved wording to prevent confusion: no more `IDX` (which is the one pointed to by the iterator) and `IDN`; just mention that the element being pointed to is the one enclosed in

[PATCH] D50689: [clangd] NFC: Improve Dex Iterators debugging traits

2018-08-16 Thread Kirill Bobyrev via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rCTE339877: [clangd] NFC: Improve Dex Iterators debugging traits (authored by omtcyfz, committed by ). Changed prior to commit: https://reviews.llvm.org/D50689?vs=161013&id=161014#toc Repository: rCTE

[PATCH] D50337: [clangd] DexIndex implementation prototype

2018-08-16 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161017. kbobyrev added a comment. Sorry, the last diff was the old one. Should be correct now. https://reviews.llvm.org/D50337 Files: clang-tools-extra/clangd/CMakeLists.txt clang-tools-extra/clangd/index/dex/DexIndex.cpp clang-tools-extra/clangd/ind

[PATCH] D50700: [clangd] Generate better incomplete bigrams for the Dex index

2018-08-16 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev added inline comments. Comment at: clang-tools-extra/unittests/clangd/DexIndexTests.cpp:324 + EXPECT_THAT(generateQueryTrigrams("u_p"), trigramsAre({"up$"})); + EXPECT_THAT(generateQueryTrigrams("_u_p"), trigramsAre({"_u_"})); ioeric wrote: > I'm not

[PATCH] D50839: [llvm] Optimize YAML::isNumeric

2018-08-16 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161027. kbobyrev marked 2 inline comments as done. kbobyrev added a subscriber: lebedev.ri. kbobyrev added a comment. Herald added a subscriber: mgorny. Very good point by @lebedev.ri! I have added a very simple fuzzer for the parser. So far, there were no i

[PATCH] D50839: [llvm] Optimize YAML::isNumeric

2018-08-16 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161033. kbobyrev added a comment. Use consistent `Regex` matchers naming: don't append "Matcher" at the end. https://reviews.llvm.org/D50839 Files: llvm/include/llvm/Support/YAMLTraits.h llvm/tools/llvm-yaml-numeric-parser-fuzzer/CMakeLists.txt llvm/

[PATCH] D50839: [llvm] Optimize YAML::isNumeric

2018-08-17 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161191. kbobyrev marked 4 inline comments as done. kbobyrev added a comment. Upload version which is IMO readable. https://reviews.llvm.org/D50839 Files: llvm/include/llvm/Support/YAMLTraits.h llvm/tools/llvm-yaml-numeric-parser-fuzzer/CMakeLists.txt

[PATCH] D50839: [llvm] Optimize YAML::isNumeric

2018-08-17 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev added inline comments. Comment at: llvm/include/llvm/Support/YAMLTraits.h:454 +inline bool isNumeric(StringRef S) { + if (S.empty()) +return false; zturner wrote: > What would happen if we re-wrote this entire function as: > > ``` > inline bool isN

[PATCH] D50839: [llvm] Optimize YAML::isNumeric

2018-08-17 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161192. kbobyrev added a comment. I tried to rewrite the loop, but IMO it looks even worse now. https://reviews.llvm.org/D50839 Files: llvm/include/llvm/Support/YAMLTraits.h llvm/tools/llvm-yaml-numeric-parser-fuzzer/CMakeLists.txt llvm/tools/llvm-ya

[PATCH] D50703: [clangd] NFC: Mark Workspace Symbol feature complete in the documentation

2018-08-17 Thread Kirill Bobyrev via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL340007: [clangd] NFC: Mark Workspace Symbol feature complete in the documentation (authored by omtcyfz, committed by ). Herald added a subscriber: llvm-commits. Changed prior to commit: https://reviews.

[PATCH] D50703: [clangd] NFC: Mark Workspace Symbol feature complete in the documentation

2018-08-17 Thread Kirill Bobyrev via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rCTE340007: [clangd] NFC: Mark Workspace Symbol feature complete in the documentation (authored by omtcyfz, committed by ). Changed prior to commit: https://reviews.llvm.org/D50703?vs=160566&id=161196#toc

[PATCH] D50337: [clangd] DexIndex implementation prototype

2018-08-17 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161202. kbobyrev marked 6 inline comments as done. kbobyrev added a comment. Address a round of comments. https://reviews.llvm.org/D50337 Files: clang-tools-extra/clangd/CMakeLists.txt clang-tools-extra/clangd/index/dex/DexIndex.cpp clang-tools-extra

[PATCH] D50839: [llvm] Optimize YAML::isNumeric

2018-08-17 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161204. kbobyrev added a comment. Add couple tests, fix formatting issues, use `__builtin_trap()` instead of `assert` in fuzzer so that it's more transparent. Also, fuzzing this unreadable version for a couple of hours suggests that it is valid. https://

[PATCH] D50337: [clangd] DexIndex implementation prototype

2018-08-17 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161235. kbobyrev marked 7 inline comments as done. kbobyrev added a comment. Address another round of comments. https://reviews.llvm.org/D50337 Files: clang-tools-extra/clangd/CMakeLists.txt clang-tools-extra/clangd/index/dex/DexIndex.cpp clang-tools

[PATCH] D50897: [clangd] Allow using experimental Dex index

2018-08-17 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev created this revision. kbobyrev added reviewers: ioeric, ilya-biryukov. kbobyrev added a project: clang-tools-extra. Herald added subscribers: arphaman, jkorous, MaskRay. This patch adds hidden Clangd flag which replaces (currently) default `MemIndex` with `DexIndex` for the static index

[PATCH] D50897: [clangd] Allow using experimental Dex index

2018-08-17 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161239. kbobyrev added a comment. Fix anonymous namespace beginning placement in Clangd driver. https://reviews.llvm.org/D50897 Files: clang-tools-extra/clangd/index/Index.h clang-tools-extra/clangd/index/MemIndex.cpp clang-tools-extra/clangd/index/M

[PATCH] D50337: [clangd] DexIndex implementation prototype

2018-08-17 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161252. kbobyrev marked 9 inline comments as done. kbobyrev added a comment. Address another round of comments. https://reviews.llvm.org/D50337 Files: clang-tools-extra/clangd/CMakeLists.txt clang-tools-extra/clangd/index/dex/DexIndex.cpp clang-tools

[PATCH] D50337: [clangd] DexIndex implementation prototype

2018-08-17 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161273. kbobyrev marked 3 inline comments as done. kbobyrev added a comment. Address all the comment, except the one about True iterators. https://reviews.llvm.org/D50337 Files: clang-tools-extra/clangd/CMakeLists.txt clang-tools-extra/clangd/index/dex

[PATCH] D50337: [clangd] DexIndex implementation prototype

2018-08-17 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev planned changes to this revision. kbobyrev added a comment. I should create another patch with True iterator to address the last comment. Comment at: clang-tools-extra/clangd/index/dex/DexIndex.cpp:97 +// Add OR iterator for scopes if the request contains scopes. +

[PATCH] D50703: [clangd] NFC: Mark Workspace Symbol feature complete in the documentation

2018-08-18 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev added a comment. In https://reviews.llvm.org/D50703#1205049, @malaperle wrote: > I hadn't marked it as done because without symbols in main files I found it > quite lacking. Ah, I see, thank you for spotting it! I was under the impression that it's feature-complete. Should I mark it

[PATCH] D50955: [clangd] Implement TRUE Iterator

2018-08-20 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev created this revision. kbobyrev added a reviewer: ioeric. Herald added subscribers: kadircet, arphaman, jkorous, MaskRay. This patch introduces TRUE Iterator which efficiently handles posting lists containing all items within `[0, Size)` range. https://reviews.llvm.org/D50955 Files:

[PATCH] D50956: [clangd] NFC: Cleanup Dex Iterator comments and simplify tests

2018-08-20 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev created this revision. kbobyrev added a reviewer: ioeric. Herald added subscribers: kadircet, arphaman, omtcyfz, jkorous, MaskRay, ilya-biryukov. Proposed changes: - Cleanup comments in `clangd/index/dex/Iterator.h`: Vim's `gq` formatting added redundant spaces instead of newlines in f

[PATCH] D50337: [clangd] DexIndex implementation prototype

2018-08-20 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161432. kbobyrev marked 2 inline comments as done. kbobyrev added a comment. Herald added a subscriber: kadircet. Use TRUE iterator to ensure validity of the query processing. https://reviews.llvm.org/D50337 Files: clang-tools-extra/clangd/CMakeLists.txt

[PATCH] D50955: [clangd] Implement TRUE Iterator

2018-08-20 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161435. kbobyrev marked 2 inline comments as done. kbobyrev added a comment. Address a couple of comments. https://reviews.llvm.org/D50955 Files: clang-tools-extra/clangd/index/dex/Iterator.cpp clang-tools-extra/clangd/index/dex/Iterator.h clang-tool

[PATCH] D50955: [clangd] Implement TRUE Iterator

2018-08-20 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev added inline comments. Comment at: clang-tools-extra/clangd/index/dex/Iterator.cpp:248 +assert(!reachedEnd() && "Can't advance iterator after it reached the end."); +Index = ID; + } ioeric wrote: > Should we check `ID < Size` here? Not really,

[PATCH] D50955: [clangd] Implement TRUE Iterator

2018-08-20 Thread Kirill Bobyrev via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL340155: [clangd] Implement TRUE Iterator (authored by omtcyfz, committed by ). Herald added a subscriber: llvm-commits. Changed prior to commit: https://reviews.llvm.org/D50955?vs=161435&id=161440#toc

[PATCH] D50956: [clangd] NFC: Cleanup Dex Iterator comments and simplify tests

2018-08-20 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161443. kbobyrev edited the summary of this revision. kbobyrev added a comment. Something I initially forgot: fix misplaced `private:` so that `dump()` stays private as it was in the interface. https://reviews.llvm.org/D50956 Files: clang-tools-extra/cl

[PATCH] D50956: [clangd] NFC: Cleanup Dex Iterator comments and simplify tests

2018-08-20 Thread Kirill Bobyrev via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL340157: [clangd] NFC: Cleanup Dex Iterator comments and simplify tests (authored by omtcyfz, committed by ). Herald added a subscriber: llvm-commits. Changed prior to commit: https://reviews.llvm.org/D5

[PATCH] D50970: [clangd] Introduce BOOST iterators

2018-08-20 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev created this revision. kbobyrev added reviewers: ioeric, ilya-biryukov. kbobyrev added a project: clang-tools-extra. Herald added subscribers: kadircet, arphaman, jkorous, MaskRay. https://reviews.llvm.org/D50970 Files: clang-tools-extra/clangd/index/dex/Iterator.cpp clang-tools-extr

[PATCH] D50970: [clangd] Introduce BOOST iterators

2018-08-20 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev planned changes to this revision. kbobyrev added a comment. This patch is in preview mode, documentation overhaul and minor cleanup incoming. https://reviews.llvm.org/D50970 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://li

[PATCH] D50970: [clangd] Implement BOOST iterator

2018-08-20 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161477. kbobyrev retitled this revision from "[clangd] Introduce BOOST iterators" to "[clangd] Implement BOOST iterator". kbobyrev edited the summary of this revision. kbobyrev added a comment. Add documentation, cleanup tests. https://reviews.llvm.org/D50

[PATCH] D50337: [clangd] DexIndex implementation prototype

2018-08-20 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161480. kbobyrev marked 6 inline comments as done. kbobyrev added a comment. Address post-LGTM comments. https://reviews.llvm.org/D50337 Files: clang-tools-extra/clangd/CMakeLists.txt clang-tools-extra/clangd/index/dex/DexIndex.cpp clang-tools-extra/

[PATCH] D50337: [clangd] DexIndex implementation prototype

2018-08-20 Thread Kirill Bobyrev via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL340175: [clangd] DexIndex implementation prototype (authored by omtcyfz, committed by ). Herald added a subscriber: llvm-commits. Changed prior to commit: https://reviews.llvm.org/D50337?vs=161480&id=16

[PATCH] D50897: [clangd] Allow using experimental Dex index

2018-08-20 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161487. kbobyrev marked an inline comment as done. https://reviews.llvm.org/D50897 Files: clang-tools-extra/clangd/index/MemIndex.cpp clang-tools-extra/clangd/index/MemIndex.h clang-tools-extra/clangd/index/dex/DexIndex.cpp clang-tools-extra/clangd/i

[PATCH] D51029: [clangd] Implement LIMIT iterator

2018-08-21 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev created this revision. kbobyrev added reviewers: ioeric, ilya-biryukov. kbobyrev added a project: clang-tools-extra. Herald added subscribers: kadircet, arphaman, jkorous, MaskRay. https://reviews.llvm.org/D51029 Files: clang-tools-extra/clangd/index/dex/DexIndex.cpp clang-tools-extr

[PATCH] D51029: [clangd] Implement LIMIT iterator

2018-08-21 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev planned changes to this revision. kbobyrev added a comment. Patch is in the preview mode, I will add documentation and more tests before opening a review. https://reviews.llvm.org/D51029 ___ cfe-commits mailing list cfe-commits@lists.llvm.

[PATCH] D51029: [clangd] Implement LIMIT iterator

2018-08-21 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161677. kbobyrev added a comment. Add comprehensive tests, improve documentation. https://reviews.llvm.org/D51029 Files: clang-tools-extra/clangd/index/dex/DexIndex.cpp clang-tools-extra/clangd/index/dex/Iterator.cpp clang-tools-extra/clangd/index/de

[PATCH] D51029: [clangd] Implement LIMIT iterator

2018-08-21 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev planned changes to this revision. kbobyrev added a comment. Since it's bundled with the BOOST iterator and doesn't make too much sense without it, I should probable rebase on top of https://reviews.llvm.org/D50970 and add it as the parent revision. https://reviews.llvm.org/D51029 _

[PATCH] D50897: [clangd] Allow using experimental Dex index

2018-08-21 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161679. kbobyrev marked 2 inline comments as done. kbobyrev added a comment. Aww, the previous diff was the wrong one and didn't contain docs. The move of the code to the middle of Clangd driver was justified by the assumption that it might be better to mov

[PATCH] D50897: [clangd] Allow using experimental Dex index

2018-08-21 Thread Kirill Bobyrev via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL340262: [clangd] Allow using experimental Dex index (authored by omtcyfz, committed by ). Herald added a subscriber: llvm-commits. Changed prior to commit: https://reviews.llvm.org/D50897?vs=161679&id=1

[PATCH] D51090: [clangd] Add index benchmarks

2018-08-22 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev created this revision. kbobyrev added reviewers: ioeric, ilya-biryukov, sammccall. kbobyrev added a project: clang-tools-extra. Herald added subscribers: kadircet, arphaman, jkorous, MaskRay, mgorny. This patch introduces index benchmarks on top of the proposed LLVM benchmark pull. The

[PATCH] D51090: [clangd] Add index benchmarks

2018-08-22 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev planned changes to this revision. kbobyrev added a comment. The current diff is rather messy and it is also blocked by the parent revision (https://reviews.llvm.org/D50894). It is likely to change if the parent CMake structure is changed. https://reviews.llvm.org/D51090 ___

[PATCH] D50970: [clangd] Implement BOOST iterator

2018-08-22 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161909. kbobyrev marked 4 inline comments as done. kbobyrev added a subscriber: sammccall. kbobyrev added a comment. - Add more comments explaining the difference between `consume()` and `consumeAndBoost()` and their potential usecases for the clients - Move

[PATCH] D50970: [clangd] Implement BOOST iterator

2018-08-22 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161936. kbobyrev marked 2 inline comments as done. kbobyrev added a comment. Address remaining comments. https://reviews.llvm.org/D50970 Files: clang-tools-extra/clangd/index/dex/DexIndex.cpp clang-tools-extra/clangd/index/dex/Iterator.cpp clang-tool

[PATCH] D50970: [clangd] Implement BOOST iterator

2018-08-22 Thread Kirill Bobyrev via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rCTE340409: [clangd] Implement BOOST iterator (authored by omtcyfz, committed by ). Changed prior to commit: https://reviews.llvm.org/D50970?vs=161936&id=161944#toc Repository: rCTE Clang Tools Extra

[PATCH] D51029: [clangd] Implement LIMIT iterator

2018-08-22 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161947. kbobyrev edited the summary of this revision. kbobyrev added a reviewer: sammccall. kbobyrev added a comment. Rebase on top of BOOST iterator patch, update tests. https://reviews.llvm.org/D51029 Files: clang-tools-extra/clangd/index/dex/Iterator.

[PATCH] D51029: [clangd] Implement LIMIT iterator

2018-08-22 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 161952. kbobyrev added a comment. Use better wording for internal `LimitIterator` documentation, perform minor code cleanup. https://reviews.llvm.org/D51029 Files: clang-tools-extra/clangd/index/dex/Iterator.cpp clang-tools-extra/clangd/index/dex/Iter

[PATCH] D51154: [clangd] Log memory usage of DexIndex and MemIndex

2018-08-23 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev created this revision. kbobyrev added reviewers: ioeric, ilya-biryukov, sammccall. kbobyrev added a project: clang-tools-extra. Herald added subscribers: kadircet, arphaman, jkorous, MaskRay. This patch prints information about built index size estimation to verbose logs. This is useful

[PATCH] D51154: [clangd] Log memory usage of DexIndex and MemIndex

2018-08-23 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 162146. kbobyrev marked 6 inline comments as done. kbobyrev added a comment. Address a bunch of comments. https://reviews.llvm.org/D51154 Files: clang-tools-extra/clangd/index/FileIndex.cpp clang-tools-extra/clangd/index/FileIndex.h clang-tools-extra

[PATCH] D51154: [clangd] Log memory usage of DexIndex and MemIndex

2018-08-23 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev added inline comments. Comment at: clang-tools-extra/clangd/index/dex/DexIndex.cpp:180 + Bytes += SymbolQuality.size() * sizeof(std::pair); + Bytes += InvertedIndex.size() * sizeof(Token); + { sammccall wrote: > I think you're not counting the size of

[PATCH] D47471: [clangd] Minor cleanup

2018-05-29 Thread Kirill Bobyrev via Phabricator via cfe-commits
omtcyfz created this revision. omtcyfz added reviewers: ioeric, ilya-biryukov. omtcyfz added a project: clang-tools-extra. Herald added subscribers: jkorous, MaskRay. This patch silences few clang-tidy warnings, removes unwanted trailing whitespace and enforces coding guidelines. The functionali

[PATCH] D47471: [clangd] Minor cleanup

2018-05-29 Thread Kirill Bobyrev via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL333411: [clangd] Minor cleanup (authored by omtcyfz, committed by ). Herald added subscribers: llvm-commits, klimek. Changed prior to commit: https://reviews.llvm.org/D47471?vs=148847&id=148887#toc Rep

[PATCH] D47471: [clangd] Minor cleanup

2018-05-29 Thread Kirill Bobyrev via Phabricator via cfe-commits
omtcyfz added a comment. Thank you, Eric! Repository: rL LLVM https://reviews.llvm.org/D47471 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D51029: [clangd] Implement LIMIT iterator

2018-08-23 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 162183. kbobyrev marked 3 inline comments as done. kbobyrev added a comment. Address a round comments from Sam. https://reviews.llvm.org/D51029 Files: clang-tools-extra/clangd/index/dex/Iterator.cpp clang-tools-extra/clangd/index/dex/Iterator.h clang

[PATCH] D51154: [clangd] Log memory usage of DexIndex and MemIndex

2018-08-23 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 162184. kbobyrev marked 2 inline comments as done. kbobyrev added a comment. Slightly simplify the code. https://reviews.llvm.org/D51154 Files: clang-tools-extra/clangd/index/FileIndex.cpp clang-tools-extra/clangd/index/FileIndex.h clang-tools-extra/

[PATCH] D51154: [clangd] Log memory usage of DexIndex and MemIndex

2018-08-24 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 162334. kbobyrev marked 3 inline comments as done. kbobyrev added a comment. Address few concerns. https://reviews.llvm.org/D51154 Files: clang-tools-extra/clangd/index/FileIndex.cpp clang-tools-extra/clangd/index/FileIndex.h clang-tools-extra/clangd

[PATCH] D51154: [clangd] Log memory usage of DexIndex and MemIndex

2018-08-24 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev added a comment. In https://reviews.llvm.org/D51154#1211376, @ioeric wrote: > Do we plan to expose an API in `ClangdServer` to allow C++ API users to track > index memory usages? I think we do, IIUC the conclusion of the offline discussion was that it might be useful for the clients.

[PATCH] D51029: [clangd] Implement LIMIT iterator

2018-08-24 Thread Kirill Bobyrev via Phabricator via cfe-commits
kbobyrev updated this revision to Diff 162341. kbobyrev marked 7 inline comments as done. kbobyrev added a comment. Address a round of comments & simplify code. https://reviews.llvm.org/D51029 Files: clang-tools-extra/clangd/index/dex/DexIndex.cpp clang-tools-extra/clangd/index/dex/Iterator

[PATCH] D51154: [clangd] Log memory usage of DexIndex and MemIndex

2018-08-24 Thread Kirill Bobyrev via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL340601: [clangd] Log memory usage of DexIndex and MemIndex (authored by omtcyfz, committed by ). Herald added a subscriber: llvm-commits. Changed prior to commit: https://reviews.llvm.org/D51154?vs=1623

[PATCH] D51029: [clangd] Implement LIMIT iterator

2018-08-24 Thread Kirill Bobyrev via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL340605: [clangd] Implement LIMIT iterator (authored by omtcyfz, committed by ). Herald added a subscriber: llvm-commits. Changed prior to commit: https://reviews.llvm.org/D51029?vs=162341&id=162359#toc

  1   2   3   4   5   6   7   8   9   10   >