[clang][clang-scan-deps] Aggregate the full dependency information.
Differential Revision: https://reviews.llvm.org/D70268 This is a recommit of f978ea49 with a fix for the PowerPC failure. The issue was that: * `CompilerInstance::ExecuteAction` calls `getTarget().adjust(getLangOpts());`. * `PPCTargetInfo::adjust` changes `LangOptions::HasAltivec`. * This happens after the first few calls to `getModuleHash`. There’s even a FIXME saying: ``` // FIXME: We shouldn't need to do this, the target should be immutable once // created. This complexity should be lifted elsewhere. ``` This only showed up on PowerPC because it's one of the few targets that almost always changes a hashed langopt. I looked into addressing the fixme, but that would be a much larger change, and it's not the only thing that happens in `ExecuteAction` that can change the module context hash. Instead I changed the code to not call `getModuleHash` until after it has been modified in `ExecuteAction`.
Loading
Please sign in to comment