llvm-project/clang/lib/Basic
Reid Kleckner bc8836651f Forward declare FileEntry and DirectoryEntry in Module.h
FileManager.h is an expensive header (~350ms for me in isolation), so
try to do without it.

Notably, we need to avoid checking the alignment of FileEntry, which
happens for DenseMap<FileEntry*> and PointerUnion<FileEntry*>. I
adjusted the code to avoid PointerUnion, and moved the DenseMap
insertion to the .cpp file.

Globally, this only saved about ~17 includes of the related headers
because SourceManager.h still includes FileManager.h, and it is more
popular than Module.h.
2020-02-27 10:18:06 -08:00
..
Targets [AIX][Frontend] C++ ABI customizations for AIX boilerplate 2020-02-24 10:26:51 -05:00
Attributes.cpp Add an attribute registry so plugins can add attributes 2020-02-27 17:23:16 +00:00
Builtins.cpp isBuiltinFunc() uses StringRef instead of const char* 2019-10-29 17:36:55 +01:00
CMakeLists.txt Make LLVM_APPEND_VC_REV=OFF affect clang, lld, and lldb as well. 2020-01-16 19:04:08 -05:00
CharInfo.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CodeGenOptions.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Cuda.cpp [CUDA] Assume the latest known CUDA version if we've found an unknown one. 2020-01-28 10:11:42 -08:00
Diagnostic.cpp [Sema] Improve diagnostic about addr spaces for overload candidates 2019-12-13 12:35:18 +00:00
DiagnosticIDs.cpp GCC5 buildbot made it to clang. Fix implicit conversions it found. 2020-01-29 02:19:49 +01:00
DiagnosticOptions.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
FileManager.cpp [NFC] Remove trailing space 2020-02-18 10:49:13 +08:00
FileSystemStatCache.cpp [FileSystemStatCache] Return std::error_code from stat cache methods 2019-04-16 17:34:26 +00:00
FixedPoint.cpp Fix parameter name comments using clang-tidy. NFC. 2019-07-16 04:46:31 +00:00
IdentifierTable.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
LangOptions.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LangStandards.cpp Move LangStandard*, InputKind::Language to Basic 2019-08-05 13:59:26 +00:00
Module.cpp Forward declare FileEntry and DirectoryEntry in Module.h 2020-02-27 10:18:06 -08:00
ObjCRuntime.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
OpenMPKinds.cpp [OpenMP][NFCI] Use the libFrontend DefaultKind in Clang 2020-02-15 00:38:12 -06:00
OperatorPrecedence.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
SanitizerBlacklist.cpp Forward declare special case lists 2020-02-27 10:05:30 -08:00
SanitizerSpecialCaseList.cpp Reland 9f3fdb0d7fab: [Driver] Use VFS to check if sanitizer blacklists exist 2019-11-21 11:56:09 +01:00
Sanitizers.cpp Tweak r355278 for compatibility with gcc 6 and earlier. 2019-03-02 21:55:36 +00:00
SourceLocation.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
SourceManager.cpp Detect source location overflow due includes 2020-01-24 23:56:47 +00:00
Stack.cpp [msvc] Add necessary #include to make compiler intrinsics available. 2019-08-26 18:33:15 +00:00
TargetInfo.cpp Prune include of DataLayout.h from include/clang/Basic/TargetInfo.h. NFC 2019-10-21 17:58:14 +00:00
Targets.cpp [Clang] Enable RISC-V support for Fuchsia 2019-11-21 16:02:26 -08:00
Targets.h De-templatize non-dependent VS macro logic, NFC 2019-07-09 20:57:28 +00:00
TokenKinds.cpp Use switch instead of series of comparisons 2019-08-03 16:32:49 +00:00
Version.cpp Remove some SVN-specific code. 2020-01-16 11:02:52 -05:00
Warnings.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
XRayInstr.cpp [xray] Allow instrumenting only function entry and/or only function exit 2020-01-17 13:32:34 -08:00
XRayLists.cpp Forward declare special case lists 2020-02-27 10:05:30 -08:00