Page MenuHomePhabricator

Please use GitHub pull requests for new patches. Phabricator shutdown timeline

kuganv (Kugan Vivekanandarajah)
User

Projects

User does not belong to any projects.

User Details

User Since
Apr 25 2022, 1:37 AM (75 w, 10 h)

Recent Activity

Today

kuganv added a comment to D159497: [RFC][clangd] Check if SelectionTree is complete.

ping? Any thoughts. Thanks.

Mon, Oct 2, 5:33 AM · Restricted Project, Restricted Project

Mon, Sep 11

kuganv published D159497: [RFC][clangd] Check if SelectionTree is complete for review.
Mon, Sep 11, 6:30 AM · Restricted Project, Restricted Project

Jun 11 2023

kuganv updated the diff for D148088: [RFC][clangd] Move preamble index out of document open critical path.

Updated based on the review comments.

Jun 11 2023, 12:54 PM · Restricted Project, Restricted Project, Restricted Project

May 23 2023

kuganv added inline comments to D148088: [RFC][clangd] Move preamble index out of document open critical path.
May 23 2023, 12:09 PM · Restricted Project, Restricted Project, Restricted Project
kuganv updated the diff for D148088: [RFC][clangd] Move preamble index out of document open critical path.

Set just PrecompilePreambleConsumer/PCHGenerator and ASTMutationListener to null.
Set the FileManager VFS to consuming FS so that it is thread safe.

May 23 2023, 12:08 PM · Restricted Project, Restricted Project, Restricted Project

May 19 2023

kuganv updated the diff for D148088: [RFC][clangd] Move preamble index out of document open critical path.

Revised Except for:

  1. Explicitly destructing in AfterExecute
  2. setStatCache to take refence

Removing Both of which is causing crash.

May 19 2023, 8:09 AM · Restricted Project, Restricted Project, Restricted Project

May 17 2023

kuganv added inline comments to D148088: [RFC][clangd] Move preamble index out of document open critical path.
May 17 2023, 9:45 AM · Restricted Project, Restricted Project, Restricted Project

May 16 2023

kuganv updated the diff for D148088: [RFC][clangd] Move preamble index out of document open critical path.

Fixed missing merge that caused build error.

May 16 2023, 3:35 AM · Restricted Project, Restricted Project, Restricted Project
kuganv added inline comments to D148088: [RFC][clangd] Move preamble index out of document open critical path.
May 16 2023, 12:49 AM · Restricted Project, Restricted Project, Restricted Project
kuganv updated the diff for D148088: [RFC][clangd] Move preamble index out of document open critical path.

As per review, moved Preamble indexing into ClangdServer's IndexTasks.

May 16 2023, 12:44 AM · Restricted Project, Restricted Project, Restricted Project

May 15 2023

kuganv added inline comments to D148088: [RFC][clangd] Move preamble index out of document open critical path.
May 15 2023, 6:27 AM · Restricted Project, Restricted Project, Restricted Project
kuganv updated the diff for D148088: [RFC][clangd] Move preamble index out of document open critical path.

Fixed tests
clangd/unittests/TUSchedulerTests.cpp require re-warite due to delayed onPreambleAST callback.

May 15 2023, 1:51 AM · Restricted Project, Restricted Project, Restricted Project
kuganv planned changes to D148088: [RFC][clangd] Move preamble index out of document open critical path.
May 15 2023, 12:19 AM · Restricted Project, Restricted Project, Restricted Project

May 13 2023

kuganv retitled D148088: [RFC][clangd] Move preamble index out of document open critical path from [RFC][clangd] Move preamble index task to a seperate task to [RFC][clangd] Move preamble index out of document open critical path.
May 13 2023, 12:11 PM · Restricted Project, Restricted Project, Restricted Project
kuganv updated the diff for D148088: [RFC][clangd] Move preamble index out of document open critical path.

Re-implemented based on review

May 13 2023, 12:10 PM · Restricted Project, Restricted Project, Restricted Project

May 3 2023

kuganv added a comment to D148088: [RFC][clangd] Move preamble index out of document open critical path.

Sorry I was trying to give some brief idea about what it might look like in Implementation Concerns section above, but let me give some more details;

I think we can just change the signature for PreambleParsedCallback to pass along refcounted objects. forgot to mention in the first comment, but we should also change the CanonicalIncludes to be a shared_ptr so that it can outlive the PreambleData. We should invoke the callback inside buildPreamble after a successful build. Afterwards we should also change the signature for onPreambleAST to take AST, PP and CanonicalIncludes as ref-counted objects again and PreambleThread::build should just forward objects received from PreambleParsedCallback. Afterwards inside the UpdateIndexCallbacks::onPreambleAST we can just invoke indexing on Tasks if it's present or synchronously in the absence of it.

Thanks @kadircet for the details.

May 3 2023, 12:39 PM · Restricted Project, Restricted Project, Restricted Project
kuganv added a comment to D148088: [RFC][clangd] Move preamble index out of document open critical path.

Thanks @kadircet , @sammccall and @ilya-biryukov for the super detailed explanation. As mentioned, we will test clangd with an ASAN build to test.

May 3 2023, 4:03 AM · Restricted Project, Restricted Project, Restricted Project

May 2 2023

kuganv added inline comments to D148088: [RFC][clangd] Move preamble index out of document open critical path.
May 2 2023, 12:48 PM · Restricted Project, Restricted Project, Restricted Project

Apr 27 2023

kuganv added a comment to D148088: [RFC][clangd] Move preamble index out of document open critical path.

We would like to move the preamble index out of the critical path

Could you provide motivation why you need to do it? What is the underlying problem that this change is trying to solve?
We rely on preamble being indexed at that particular time for correct results in future steps, it's definitely not a no-op change even if the threading issues are resolved (see the other comment).

Apr 27 2023, 8:19 AM · Restricted Project, Restricted Project, Restricted Project

Apr 26 2023

kuganv published D148088: [RFC][clangd] Move preamble index out of document open critical path for review.
Apr 26 2023, 9:24 AM · Restricted Project, Restricted Project, Restricted Project

Feb 23 2023

kuganv added a comment to D144599: [clangd/index/remote]NFC: Adapt code to newer grpc/protobuf versions.

if you don't mind me asking, are you deliberately building remote-index components? i.e. do you have an internal remote-index server/deployment ? Asking as it'd be great to know that we've adoption here, outside of ourselves.

OTOH, if you're not actually using it, this shouldn't be built unless -DCLANGD_ENABLE_REMOTE=1 is part of the build config, hence we might have a bug in the build configuration and I'd like to make sure it's fixed.

Thanks for looking into it. Yes, we use -DCLANGD_ENABLE_REMOTE=On and provide grpc path with -DGRPC_INSTALL_PATH.

Feb 23 2023, 1:36 AM · Restricted Project, Restricted Project

Feb 21 2023

kuganv added a comment to D141950: [NFC] Use find_last_of when seraching for code in getRawCommentForDeclNoCacheImpl.

LGTM! You should probably put "NFC" into the patch title when landing the changes though, so it's more clear as to why there's no test coverage.

Do you think this warrants adding a release note to let users know about the performance improvement?

Feb 21 2023, 7:58 AM · Restricted Project, Restricted Project
kuganv retitled D141950: [NFC] Use find_last_of when seraching for code in getRawCommentForDeclNoCacheImpl from Use find_last_of when seraching for code in getRawCommentForDeclNoCacheImpl to [NFC] Use find_last_of when seraching for code in getRawCommentForDeclNoCacheImpl.
Feb 21 2023, 7:14 AM · Restricted Project, Restricted Project

Feb 20 2023

kuganv updated the summary of D141950: [NFC] Use find_last_of when seraching for code in getRawCommentForDeclNoCacheImpl.
Feb 20 2023, 10:39 PM · Restricted Project, Restricted Project

Feb 13 2023

kuganv added reviewers for D141950: [NFC] Use find_last_of when seraching for code in getRawCommentForDeclNoCacheImpl: kadircet, sammccall, ilya-biryukov.
Feb 13 2023, 6:10 AM · Restricted Project, Restricted Project
kuganv updated the diff for D141950: [NFC] Use find_last_of when seraching for code in getRawCommentForDeclNoCacheImpl.

Rebase

Feb 13 2023, 5:14 AM · Restricted Project, Restricted Project

Feb 4 2023

kuganv updated the diff for D141950: [NFC] Use find_last_of when seraching for code in getRawCommentForDeclNoCacheImpl.

Rebasing branch.

Feb 4 2023, 10:44 PM · Restricted Project, Restricted Project

Feb 2 2023

kuganv published D141950: [NFC] Use find_last_of when seraching for code in getRawCommentForDeclNoCacheImpl for review.
Feb 2 2023, 8:30 AM · Restricted Project, Restricted Project

May 17 2022

kuganv planned changes to D124909: Fix issues with using clangd with C++ modules.
May 17 2022, 11:53 AM · Restricted Project, Restricted Project, Restricted Project

May 7 2022

kuganv added a comment to D124909: Fix issues with using clangd with C++ modules.

@sammccall, What are the first steps that is needed for supporting modules with clangd. From what I see, options related to handling comments that are specifically added to the compile options by clangd needs handling. This RFC diff is on that note.

May 7 2022, 8:34 AM · Restricted Project, Restricted Project, Restricted Project

May 4 2022

kuganv added a comment to D124909: Fix issues with using clangd with C++ modules.

Thanks a lot for the detailed comment. Yes, you are right in that we are using build system (buck) to build the modules and provide as part of the CDB. This is fairly cheap when we hit the buck cache that is also shared by others.

May 4 2022, 8:48 AM · Restricted Project, Restricted Project, Restricted Project
kuganv added reviewers for D124909: Fix issues with using clangd with C++ modules: sammccall, kadircet, 0x1eaf, ivanmurashko, bruno, DmitryPolukhin, bnbarham.
May 4 2022, 2:54 AM · Restricted Project, Restricted Project, Restricted Project
kuganv retitled D124909: Fix issues with using clangd with C++ modules from Fixes following incompatibility issues with c++ modules to Fix issues with using clangd with C++ modules.
May 4 2022, 2:47 AM · Restricted Project, Restricted Project, Restricted Project
kuganv updated the summary of D124909: Fix issues with using clangd with C++ modules.
May 4 2022, 2:46 AM · Restricted Project, Restricted Project, Restricted Project
kuganv abandoned D124432: Fix issues with using clangd with C++ modules.
May 4 2022, 2:46 AM · Restricted Project, Restricted Project, Restricted Project
kuganv updated the summary of D124909: Fix issues with using clangd with C++ modules.
May 4 2022, 2:44 AM · Restricted Project, Restricted Project, Restricted Project
kuganv requested review of D124909: Fix issues with using clangd with C++ modules.
May 4 2022, 2:21 AM · Restricted Project, Restricted Project, Restricted Project

May 3 2022

kuganv updated the diff for D124432: Fix issues with using clangd with C++ modules.
May 3 2022, 8:30 AM · Restricted Project, Restricted Project, Restricted Project
kuganv updated the diff for D124432: Fix issues with using clangd with C++ modules.
May 3 2022, 6:56 AM · Restricted Project, Restricted Project, Restricted Project
kuganv added a reviewer for D124840: [RFC] Add and sort decl to maintain order instead of inserting in order: akyrtzi.
May 3 2022, 5:22 AM · Restricted Project, Restricted Project
kuganv requested review of D124840: [RFC] Add and sort decl to maintain order instead of inserting in order.
May 3 2022, 4:23 AM · Restricted Project, Restricted Project

Apr 25 2022

kuganv updated the summary of D124432: Fix issues with using clangd with C++ modules.
Apr 25 2022, 10:58 PM · Restricted Project, Restricted Project, Restricted Project
kuganv updated the summary of D124432: Fix issues with using clangd with C++ modules.
Apr 25 2022, 10:58 PM · Restricted Project, Restricted Project, Restricted Project
kuganv updated the summary of D124432: Fix issues with using clangd with C++ modules.
Apr 25 2022, 10:50 PM · Restricted Project, Restricted Project, Restricted Project
kuganv requested review of D124432: Fix issues with using clangd with C++ modules.
Apr 25 2022, 10:41 PM · Restricted Project, Restricted Project, Restricted Project