[PATCH] D64718: [clangd] Triggering indexing on each translation unit with an error

Kadir Cetinkaya via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Aug 20 03:32:37 PDT 2019


kadircet planned changes to this revision.
kadircet added a comment.

this requires keeping an inverted dependency graph, which can be quite expensive memory-wise.
In a project like chromium there are ~40k translation units, and it is safe to assume there are ~1k core headers just coming from std library,
that are most likely included by all of the translation units directly or transatively. This results in ~320MB of memory usage even if we just
store a pointer.

It is quite likely that there would be a lot more "base" headers like that, which could easily drive up the memory usage.

We might need some tradeoffs to limit that usage.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D64718/new/

https://reviews.llvm.org/D64718





More information about the cfe-commits mailing list