[PATCH] D142416: [clang][deps] NFC: Remove dead code

Jan Svoboda via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Jan 23 16:57:39 PST 2023


jansvoboda11 added inline comments.


================
Comment at: clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp:180
-  // incompatible modules (e.g. with differences in search paths).
-  CI.getHeaderSearchOpts().ModulesStrictContextHash = true;
-
----------------
benlangmuir wrote:
> I see we're enabling strict hashing in the scaner itself: `ScanInstance.getHeaderSearchOpts().ModulesStrictContextHash = true;`, which makes me think this code was never used to influence the scanner's implicit build.  If that's true, was this code *already* dead before my change in D129884?  It's not clear to me what it was doing.
The line you found enables strict context hashing for the `CompilerInstance` that performs the scanning build. That's still important so that we don't squash multiple module configurations into one minimized PCM.

The line this patch removes used to control generation of the module context hash we report to the client. This used to be done by taking the original TU command line, tweaking it, and calling `CompilerInvocation::getModuleHash()`. Since we now hash the whole command line that's generated from said `CompilerInvocation`, controlling the behavior of `getModuleHash()` by enabling strict context hash is no longer necessary.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D142416



More information about the cfe-commits mailing list