[PATCH] D41491: [clangd] Add a tool to build YAML-format global symbols.

Haojian Wu via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Dec 22 06:08:13 PST 2017


hokein added a comment.

In https://reviews.llvm.org/D41491#963103, @sammccall wrote:

> Thanks for the simplification!
>  How long does it take to run over LLVM on your machine?


It took < 10 minutes (vs 20 minutes with python script) to run over LLVM.



================
Comment at: clangd/global-symbol-builder/GlobalSymbolBuilderMain.cpp:45
+    IndexOpts.SystemSymbolFilter =
+        index::IndexingOptions::SystemSymbolFilterKind::All;
+    IndexOpts.IndexFunctionLocals = false;
----------------
sammccall wrote:
> out of curiosity, what does this do?
No official document on this :(
IIUC, this is a filter option to control whether we get symbols from the system code (like std library). `All` means we index all of them.


================
Comment at: clangd/global-symbol-builder/GlobalSymbolBuilderMain.cpp:57
+
+static cl::OptionCategory GlobalSymbolCategory("global-symbol-builder options");
+
----------------
sammccall wrote:
> you could avoid opt parsing, opening files and dealing with errors etc by just writing to llvm::outs() and running with > foo.yaml - up to you
Good idea. Done.


Repository:
  rCTE Clang Tools Extra

https://reviews.llvm.org/D41491





More information about the cfe-commits mailing list