teak-llvm/clang/lib/Tooling
Michael Spencer 356a4b433b [clang][clang-scan-deps] Aggregate the full dependency information.
Differential Revision: https://reviews.llvm.org/D70268

This is a recommit of f978ea4983 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`.
2020-01-23 16:58:50 -08:00
..
ASTDiff [NFC] Fixes -Wrange-loop-analysis warnings 2020-01-01 20:01:37 +01:00
Core [clang] Adopt new FileManager error-returning APIs 2019-08-01 21:31:56 +00:00
DependencyScanning [clang][clang-scan-deps] Aggregate the full dependency information. 2020-01-23 16:58:50 -08:00
Inclusions Allow additional file suffixes/extensions considered as source in main include grouping 2019-11-12 21:26:52 +00:00
Refactoring Remove Expr.h include from ASTContext.h, NFC 2019-12-06 15:30:49 -08:00
Syntax Remove trailing ;. NFC. 2020-01-14 16:52:20 -05:00
Transformer [libTooling] Fix bug in Stencil handling of macro ranges 2020-01-17 12:11:25 -05:00
AllTUsExecution.cpp Prune Pass.h include from DataLayout.h. NFCI 2019-10-21 17:51:54 +00:00
ArgumentsAdjusters.cpp [clang][Tooling] Filter flags that generate output in SyntaxOnlyAdjuster 2019-11-13 15:03:30 +01:00
CMakeLists.txt [clang][Tooling] Add support for .rsp files in compile_commands.json 2019-12-04 15:13:12 +01:00
CommonOptionsParser.cpp [Clang] Migrate llvm::make_unique to std::make_unique 2019-08-14 23:04:18 +00:00
CompilationDatabase.cpp [Clang] Migrate llvm::make_unique to std::make_unique 2019-08-14 23:04:18 +00:00
Execution.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ExpandResponseFilesCompilationDatabase.cpp [clang][Tooling] Fix potential UB in ExpandResponseFilesCompilationDatabase 2019-12-09 12:24:23 +01:00
FileMatchTrie.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
FixIt.cpp [LibTooling] Add "SourceCode" library for functions relating to source-code manipulation. 2019-04-05 14:05:03 +00:00
GuessTargetAndModeCompilationDatabase.cpp [Clang] Migrate llvm::make_unique to std::make_unique 2019-08-14 23:04:18 +00:00
InterpolatingCompilationDatabase.cpp [clang][Tooling] Prefer -x over -std when interpolating 2019-12-20 11:10:36 +01:00
JSONCompilationDatabase.cpp Reapply "[llvm][Support] Take in CurrentDirectory as a parameter in ExpandResponseFiles" 2019-12-04 17:00:47 +01:00
Refactoring.cpp [clang] Adopt new FileManager error-returning APIs 2019-08-01 21:31:56 +00:00
RefactoringCallbacks.cpp [Clang] Migrate llvm::make_unique to std::make_unique 2019-08-14 23:04:18 +00:00
StandaloneExecution.cpp [Clang] Migrate llvm::make_unique to std::make_unique 2019-08-14 23:04:18 +00:00
Tooling.cpp [libTooling] Extend buildASTFromCodeWithArgs to take files argument. 2019-11-19 12:18:36 -05:00