Page MenuHomePhabricator

lightmelodies (WangWei)
User

Projects

User does not belong to any projects.

User Details

User Since
Sun, Nov 22, 2:16 AM (1 w, 5 d)

Recent Activity

Thu, Nov 26

lightmelodies added a comment to D91930: [clangd] Implement textDocument/codeLens.

I have also considered these problems, and here is some points of my view.
Latency
Consider llvm-project itself, textDocument/codeLens can be done in <500ms generally and <100ms if collect hierarchy is disabled in my notebook. Latency is significant in some rare case like Type.h which has too complex hierarchy relations. Meanwhile, vscode is smart to remember previous codelens's positions so the text rendering will not look too weird during long-time request. In fact, the biggest performance issue I find is that building AST when open a new file costs too much time, which makes textDocument/codeLens quite slow, as well as other action such as textDocument/documentSymbols. That's why I modified ClangdLSPServer.cpp to keep AST for recent closed files.

fileline countcostcost (without hierarchy)
ASTVector.h4114ms1ms
APValue.h69316 ms8ms
Decl.h4599213 ms40 ms
Expr.h6383447 ms61 ms
Type.h72223765 ms47 ms
Thu, Nov 26, 7:42 AM · Restricted Project, Restricted Project

Mon, Nov 23

lightmelodies updated the summary of D91930: [clangd] Implement textDocument/codeLens.
Mon, Nov 23, 10:29 PM · Restricted Project, Restricted Project
lightmelodies added a comment to D91930: [clangd] Implement textDocument/codeLens.

Thanks a lot for working on improving clangd!

Can you also give a high-level overview of what kind of functionality you are providing here? Looks like there's a lot going on here, and it would be nice to know what you are attempting to do, rather than inferring that from the code. It would also help future travellers, as they can just read the description rather than going through the whole patch.

Mon, Nov 23, 10:27 PM · Restricted Project, Restricted Project
lightmelodies updated the summary of D91930: [clangd] Implement textDocument/codeLens.
Mon, Nov 23, 10:25 PM · Restricted Project, Restricted Project

Sun, Nov 22

lightmelodies set the repository for D91930: [clangd] Implement textDocument/codeLens to rG LLVM Github Monorepo.
Sun, Nov 22, 7:11 AM · Restricted Project, Restricted Project
lightmelodies updated the diff for D91930: [clangd] Implement textDocument/codeLens.
Sun, Nov 22, 7:06 AM · Restricted Project, Restricted Project
lightmelodies set the repository for D91930: [clangd] Implement textDocument/codeLens to rG LLVM Github Monorepo.
Sun, Nov 22, 6:34 AM · Restricted Project, Restricted Project
lightmelodies updated the diff for D91930: [clangd] Implement textDocument/codeLens.
Sun, Nov 22, 6:19 AM · Restricted Project, Restricted Project
lightmelodies updated the summary of D91930: [clangd] Implement textDocument/codeLens.
Sun, Nov 22, 6:09 AM · Restricted Project, Restricted Project
lightmelodies updated the summary of D91930: [clangd] Implement textDocument/codeLens.
Sun, Nov 22, 5:43 AM · Restricted Project, Restricted Project
lightmelodies requested review of D91930: [clangd] Implement textDocument/codeLens.
Sun, Nov 22, 5:32 AM · Restricted Project, Restricted Project