Author: Sam McCall Date: 2022-10-13T12:07:31+02:00 New Revision: e78165f0ba1e2fbf72b36a36c8560645b69a168a
URL: https://github.com/llvm/llvm-project/commit/e78165f0ba1e2fbf72b36a36c8560645b69a168a DIFF: https://github.com/llvm/llvm-project/commit/e78165f0ba1e2fbf72b36a36c8560645b69a168a.diff LOG: [clangd] Block clang-tidy misc-const-correctness check This check performs an extremely large amount of work (for each variable, it runs very many full matcher-driven traversals of the whole scope the variable is defined in). When (inadvertently) enabled for Fuchsia, it regressed BuildAST times by >10x (400ms -> 7s on my machine). Differential Revision: https://reviews.llvm.org/D135829 Added: Modified: clang-tools-extra/clangd/TidyProvider.cpp Removed: ################################################################################ diff --git a/clang-tools-extra/clangd/TidyProvider.cpp b/clang-tools-extra/clangd/TidyProvider.cpp index 32a4d6a30653..a0a37e86ba01 100644 --- a/clang-tools-extra/clangd/TidyProvider.cpp +++ b/clang-tools-extra/clangd/TidyProvider.cpp @@ -212,8 +212,14 @@ TidyProvider disableUnusableChecks(llvm::ArrayRef<std::string> ExtraBadChecks) { // code, which is often the case when clangd // tries to build an AST. "-bugprone-use-after-move", - // Alias for bugprone-use-after-moe. - "-hicpp-invalid-access-moved"); + // Alias for bugprone-use-after-move. + "-hicpp-invalid-access-moved", + + // ----- Performance problems ----- + + // This check runs expensive analysis for each variable. + // It has been observed to increase reparse time by 10x. + "-misc-const-correctness"); size_t Size = BadChecks.size(); for (const std::string &Str : ExtraBadChecks) { _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits