llvm-project/clang/lib/Sema
Reid Kleckner 86565c1309 Avoid SourceManager.h include in RawCommentList.h, add missing incs
SourceManager.h includes FileManager.h, which is expensive due to
dependencies on LLVM FS headers.

Remove dead BeforeThanCompare specialization.

Sink ASTContext::addComment to cpp file.

This reduces the time to compile a file that does nothing but include
ASTContext.h from ~3.4s to ~2.8s for me.

Saves these includes:
    219 -    ../clang/include/clang/Basic/SourceManager.h
    204 -    ../clang/include/clang/Basic/FileSystemOptions.h
    204 -    ../clang/include/clang/Basic/FileManager.h
    165 -    ../llvm/include/llvm/Support/VirtualFileSystem.h
    164 -    ../llvm/include/llvm/Support/SourceMgr.h
    164 -    ../llvm/include/llvm/Support/SMLoc.h
    161 -    ../llvm/include/llvm/Support/Path.h
    141 -    ../llvm/include/llvm/ADT/BitVector.h
    128 -    ../llvm/include/llvm/Support/MemoryBuffer.h
    124 -    ../llvm/include/llvm/Support/FileSystem.h
    124 -    ../llvm/include/llvm/Support/Chrono.h
    124 -    .../MSVCSTL/include/stack
    122 -    ../llvm/include/llvm-c/Types.h
    122 -    ../llvm/include/llvm/Support/NativeFormatting.h
    122 -    ../llvm/include/llvm/Support/FormatProviders.h
    122 -    ../llvm/include/llvm/Support/CBindingWrapping.h
    122 -    .../MSVCSTL/include/xtimec.h
    122 -    .../MSVCSTL/include/ratio
    122 -    .../MSVCSTL/include/chrono
    121 -    ../llvm/include/llvm/Support/FormatVariadicDetails.h
    118 -    ../llvm/include/llvm/Support/MD5.h
    109 -    .../MSVCSTL/include/deque
    105 -    ../llvm/include/llvm/Support/Host.h
    105 -    ../llvm/include/llvm/Support/Endian.h

Reviewed By: aaron.ballman, hans

Differential Revision: https://reviews.llvm.org/D75279
2020-02-27 13:49:40 -08:00
..
AnalysisBasedWarnings.cpp [clang] detect switch fallthrough marked by a comment (PR43465) 2020-02-03 19:33:05 +01:00
CMakeLists.txt [Sema] Split availability processing into SemaAvailability.cpp 2020-01-24 17:35:39 -08:00
CodeCompleteConsumer.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CoroutineStmtBuilder.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DeclSpec.cpp Avoid SourceManager.h include in RawCommentList.h, add missing incs 2020-02-27 13:49:40 -08:00
DelayedDiagnostic.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
IdentifierResolver.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
JumpDiagnostics.cpp [NFC] Refactor representation of materialized temporaries 2019-11-19 18:20:45 +01:00
MultiplexExternalSemaSource.cpp [clang] Improve LLVM-style RTTI support in ExternalASTSource/ExternalSemaSource 2019-12-15 18:11:01 +01:00
OpenCLBuiltins.td [OpenCL] Add atomic type builtins 2020-02-26 14:08:23 +00:00
ParsedAttr.cpp Add an attribute registry so plugins can add attributes 2020-02-27 17:23:16 +00:00
Scope.cpp Un-revert "[coroutines][PR40978] Emit error for co_yield within catch block" 2019-03-25 00:53:10 +00:00
ScopeInfo.cpp PR42104: Support instantiations of lambdas that implicitly capture 2019-06-04 17:17:20 +00:00
Sema.cpp Avoid SourceManager.h include in RawCommentList.h, add missing incs 2020-02-27 13:49:40 -08:00
SemaAccess.cpp [c++20] Delete defaulted comparison functions if they would invoke an 2019-12-10 19:28:30 -08:00
SemaAttr.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
SemaAvailability.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
SemaCUDA.cpp Revert "[CUDA][HIP][OpenMP] Emit deferred diagnostics by a post-parsing AST travese" 2020-02-18 14:45:34 -05:00
SemaCXXScopeSpec.cpp [Clang] Migrate llvm::make_unique to std::make_unique 2019-08-14 23:04:18 +00:00
SemaCast.cpp [Sema] Fix pointer-to-int-cast diagnostic for _Bool 2020-02-22 19:39:49 +01:00
SemaChecking.cpp [Sema] Perform call checking when building CXXNewExpr 2020-02-26 01:36:44 +03:00
SemaCodeComplete.cpp [Sema][CodeComplete] Handle symlinks for include code completion 2020-02-19 11:45:58 -05:00
SemaConcept.cpp [Concepts] Add missing CXXThisScope to function template constraint substitution 2020-02-05 01:10:35 +02:00
SemaConsumer.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
SemaCoroutine.cpp Fix "pointer is null" static analyzer warnings. NFCI. 2020-01-09 12:05:48 +00:00
SemaDecl.cpp Forward declare special case lists 2020-02-27 10:05:30 -08:00
SemaDeclAttr.cpp Use std::foo_t rather than std::foo in clang. 2020-02-11 10:37:08 -08:00
SemaDeclCXX.cpp Fix handling of destructor names that name typedefs. 2020-02-10 02:21:01 -08:00
SemaDeclObjC.cpp [objc_direct] Small updates to help with adoption. 2020-02-16 16:32:41 -08:00
SemaExceptionSpec.cpp [Concepts] Requires Expressions 2020-01-19 00:23:26 +02:00
SemaExpr.cpp [clang] fix error detection in consteval calls 2020-02-26 21:09:31 +01:00
SemaExprCXX.cpp PR44978: Accept as an extension some cases where destructor name lookup 2020-02-26 14:55:31 -08:00
SemaExprMember.cpp Resolve exception specifications after marking the corresponding 2019-12-15 22:02:30 -08:00
SemaExprObjC.cpp [objc_direct] Small updates to help with adoption. 2020-02-16 16:32:41 -08:00
SemaFixItUtils.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
SemaInit.cpp Avoid SourceManager.h include in RawCommentList.h, add missing incs 2020-02-27 13:49:40 -08:00
SemaLambda.cpp [C++20] Add consteval-specific semantic for functions 2020-02-04 20:38:32 +01:00
SemaLookup.cpp Fix handling of destructor names that name typedefs. 2020-02-10 02:21:01 -08:00
SemaModule.cpp [DeclCXX] Remove unknown external linkage specifications 2019-11-21 15:23:05 +02:00
SemaObjCProperty.cpp [NFC] Remove trailing space 2020-02-18 10:49:13 +08:00
SemaOpenMP.cpp [OpenMP] Refactor the analysis in checkMapClauseBaseExpression using StmtVisitor class. 2020-02-24 10:30:41 -05:00
SemaOverload.cpp Avoid SourceManager.h include in RawCommentList.h, add missing incs 2020-02-27 13:49:40 -08:00
SemaPseudoObject.cpp [AST] Use an explicit copy in a range-based for 2019-11-12 20:47:46 +01:00
SemaStmt.cpp [Sema] Avoid Wrange-loop-analysis false positives 2020-01-21 21:14:10 +01:00
SemaStmtAsm.cpp Support output constraints on "asm goto" 2020-02-24 18:51:29 -08:00
SemaStmtAttr.cpp [NFCI]Create CommonAttributeInfo Type as base type of *Attr and ParsedAttr. 2019-09-13 17:39:31 +00:00
SemaTemplate.cpp [NFC] Remove trailing space 2020-02-18 10:49:13 +08:00
SemaTemplateDeduction.cpp PR44890: Inherit explicitly-specified template arguments into base class 2020-02-15 02:16:21 -08:00
SemaTemplateInstantiate.cpp [NFC] Remove trailing space 2020-02-18 10:49:13 +08:00
SemaTemplateInstantiateDecl.cpp Avoid SourceManager.h include in RawCommentList.h, add missing incs 2020-02-27 13:49:40 -08:00
SemaTemplateVariadic.cpp [NFC] Remove trailing space 2020-02-18 10:49:13 +08:00
SemaType.cpp [Sema] Remove unneeded TreeTransform.h includes, NFC 2020-01-24 17:48:38 -08:00
TreeTransform.h [OpenMP][NFCI] Use the libFrontend DefaultKind in Clang 2020-02-15 00:38:12 -06:00
TypeLocBuilder.cpp [NFC] avoid AlignedCharArray in clang 2019-07-29 23:12:48 +00:00
TypeLocBuilder.h [NFC] avoid AlignedCharArray in clang 2019-07-29 23:12:48 +00:00