[clangd] Do not rebuild AST if inputs have not changed
authorIlya Biryukov <ibiryukov@google.com>
Thu, 26 Jul 2018 09:21:07 +0000 (09:21 +0000)
committerIlya Biryukov <ibiryukov@google.com>
Thu, 26 Jul 2018 09:21:07 +0000 (09:21 +0000)
commit1720113ace55cca0e5b0cc31de6c1c6a142130c1
treebeddd155e2d2f85ab681ec0e51f75ee91bbf5ba3
parent31d38586e77fcd7a52e4905a078685d175eb5338
[clangd] Do not rebuild AST if inputs have not changed

Summary:
If the contents are the same, the update most likely comes from the
fact that compile commands were invalidated. In that case we want to
avoid rebuilds in case the compile commands are actually the same.

Reviewers: ioeric

Reviewed By: ioeric

Subscribers: simark, javed.absar, MaskRay, jkorous, arphaman, jfb, cfe-commits

Differential Revision: https://reviews.llvm.org/D49783

llvm-svn: 338012
clang-tools-extra/clangd/TUScheduler.cpp
clang-tools-extra/test/clangd/extra-flags.test
clang-tools-extra/unittests/clangd/TUSchedulerTests.cpp
clang-tools-extra/unittests/clangd/TestFS.cpp
clang-tools-extra/unittests/clangd/TestFS.h