zyounan added a comment. Thanks! I hope I'm getting things right. Specifically,
1. `UpdateIndexCallbacks::indexStdlib()::Task` in `ClangdServer.cpp` 2. `PreambleThread::run()`, `ASTWorker::run()` and `TUScheduler::runWithPreamble()::Task` in `TUScheduler.cpp` 3. The lambda of `runAsync` in `BackgroundIndex::BackgroundIndex()` in `index/Background.cpp`. ================ Comment at: clang-tools-extra/clangd/support/Threading.cpp:102 llvm::set_thread_name(Name); + // Mark the bottom of the stack for clang to be aware of the stack usage and + // prevent stack overflow. ---------------- sammccall wrote: > ugh, I forgot: this function is part of clangBasic (which is not small!) and > clangdSupport shouldn't depend on clang at all. > > I'm afraid the easiest fix is to move this to the tasks in the relevant > callsites: > - indexStdlib() in ClangdServer.cpp > - ASTWorker::run(), PreambleWorker::run(), TUScheduler::runWithPreamble() in > TUScheduler.cpp > - BackgroundIndex() in index/Background.cpp > > (I guess principled thing would be to make noteBottomOfStack() part of llvm > Support, but that seems complicated) Ah, I've never noticed clangdSupport is independent of clang. > (I guess principled thing would be to make noteBottomOfStack() part of llvm > Support, but that seems complicated) Agreed. And I think it requires an RFC before we have that migrate to llvmSupport. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D158967/new/ https://reviews.llvm.org/D158967 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits