llvm-project/clang/lib/AST
Reid Kleckner ba1ffd25c1 [OpenMP][NFC] Remove the need to include `OpenMPClause.h`
See rational here: https://reviews.llvm.org/D76173#1922916
Time to compile Attr.h in isolation goes from 2.6s to 1.8s.

Original patch by Johannes, plus some additions from Reid to fix some
clang tooling targets.

Effect on transitive includes is marginal, though:

$ diff -u <(sort thedeps-before.txt) <(sort thedeps-after.txt) \
   | grep '^[-+] ' | sort | uniq -c | sort -nr
    104 -    /usr/local/google/home/rnk/llvm-project/clang/include/clang/AST/OpenMPClause.h
     87 -    /usr/local/google/home/rnk/llvm-project/llvm/include/llvm/Frontend/OpenMP/OMPContext.h
     19 -    /usr/local/google/home/rnk/llvm-project/llvm/include/llvm/ADT/SmallSet.h
     19 -    /usr/local/google/home/rnk/llvm-project/llvm/include/llvm/ADT/SetVector.h
     14 -    /usr/include/c++/9/set
...

Differential Revision: https://reviews.llvm.org/D76184
2020-04-03 13:27:52 -07:00
..
Interp Avoid ASTContext.h -> TargetInfo.h dep 2020-02-27 14:35:00 -08:00
APValue.cpp Silence static analyzer getAs<RecordType> null dereference warnings. NFCI. 2019-10-03 11:22:48 +00:00
ASTConcept.cpp [Concepts] Transform constraints of non-template functions to ConstantEvaluated 2020-01-25 23:00:24 +02:00
ASTConsumer.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ASTContext.cpp [OPENMP50]Add initial support for OpenMP 5.0 iterator. 2020-04-02 08:28:15 -04:00
ASTDiagnostic.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
ASTDumper.cpp When dumping the AST to JSON, dump the type information from a typeid expression with a type operand. 2019-05-27 14:34:31 +00:00
ASTImporter.cpp [AST] Move dependence computations into a separate file 2020-03-17 09:22:31 +01:00
ASTImporterLookupTable.cpp [ASTImporter] Fix unhandled cases in ASTImporterLookupTable 2019-06-11 13:35:25 +00:00
ASTStructuralEquivalence.cpp [AST][NFC] Update outdated comments in ASTStructuralEquivalence.cpp 2020-02-21 15:54:58 +01:00
ASTTypeTraits.cpp Revert "[OpenMP][NFCI] Move OpenMP clause information to `lib/Frontend/OpenMP`" 2020-04-02 02:23:22 -05:00
AttrImpl.cpp [OpenMP][NFC] Remove the need to include `OpenMPClause.h` 2020-04-03 13:27:52 -07:00
CMakeLists.txt [AST] Move dependence computations into a separate file 2020-03-17 09:22:31 +01:00
CXXABI.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CXXInheritance.cpp Remove unused parameter from CXXRecordDecl::forallBases [NFC] 2020-02-29 14:23:44 +01:00
Comment.cpp Fix "pointer is null" static analyzer warning. NFCI. 2020-01-07 13:41:52 +00:00
CommentBriefParser.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CommentCommandTraits.cpp Explicitly include <cassert> when using assert 2020-03-02 22:45:28 +01:00
CommentLexer.cpp [AST] CommentLexer - Remove (optional) Invalid parameter from getSpelling. 2019-09-18 12:11:16 +00:00
CommentParser.cpp Adds a warning when an inline Doxygen comment has no argument 2019-08-05 08:05:16 +00:00
CommentSema.cpp [clang][doxygen] Fix false -Wdocumentation warning for tag typedefs 2020-02-20 11:32:30 -08:00
ComparisonCategories.cpp [c++20] P1959R0: Remove support for std::*_equality. 2019-12-16 17:49:45 -08:00
ComputeDependence.cpp [OPENMP50]Add initial support for OpenMP 5.0 iterator. 2020-04-02 08:28:15 -04:00
DataCollection.cpp Avoid SourceManager.h include in RawCommentList.h, add missing incs 2020-02-27 13:49:40 -08:00
Decl.cpp Avoid including Module.h from ExternalASTSource.h 2020-03-11 13:37:41 -07:00
DeclBase.cpp [Clang] Undef attribute for global variables 2020-03-17 21:22:23 +00:00
DeclCXX.cpp Replace getAs with castAs to fix null dereference static analyzer warnings. 2020-03-12 14:56:51 +00:00
DeclFriend.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DeclGroup.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DeclObjC.cpp ObjCMethodDecl::findPropertyDecl - fix static analyzer null dereference warnings. NFCI. 2020-03-12 15:36:49 +00:00
DeclOpenMP.cpp [OPENMP 5.0]Initial support for 'allocator' clause. 2019-03-12 18:52:33 +00:00
DeclPrinter.cpp [clang][DeclPrinter] Implement visitors for {TemplateType,NonTypeTemplate}Parms 2020-02-14 13:20:34 +01:00
DeclTemplate.cpp Add missing newlines at EOF; NFC 2020-02-12 15:57:25 +00:00
DeclarationName.cpp [OpenMP] `omp begin/end declare variant` - part 2, sema ("+CG") 2020-03-27 02:30:58 -05:00
Expr.cpp [OPENMP50]Add initial support for OpenMP 5.0 iterator. 2020-04-02 08:28:15 -04:00
ExprCXX.cpp [AST] Move dependence computations into a separate file 2020-03-17 09:22:31 +01:00
ExprClassification.cpp [OPENMP50]Add initial support for OpenMP 5.0 iterator. 2020-04-02 08:28:15 -04:00
ExprConcepts.cpp [AST] Make Expr::setDependence protected and remove add/removeDependence. NFC 2020-03-19 21:54:40 +01:00
ExprConstant.cpp [OPENMP50]Add initial support for OpenMP 5.0 iterator. 2020-04-02 08:28:15 -04:00
ExprObjC.cpp [AST] Move dependence computations into a separate file 2020-03-17 09:22:31 +01:00
ExternalASTMerger.cpp Modernize llvm::Error handling in ExternalASTMerger 2019-11-14 13:58:32 +01:00
ExternalASTSource.cpp Avoid including FileManager.h from SourceManager.h 2020-03-11 13:53:12 -07:00
FormatString.cpp Revert "[Clang] Warn about 'z' printf modifier in old MSVC." 2020-01-28 09:27:54 -05:00
FormatStringParsing.h Add a missing header comment, NFC 2019-08-13 22:01:39 +00:00
InheritViz.cpp Silence static analyzer getAs<RecordType> null dereference warnings. NFCI. 2019-10-03 11:22:48 +00:00
ItaniumCXXABI.cpp [c++20] Fix some ambiguities in our mangling of lambdas with explicit 2019-09-05 01:23:47 +00:00
ItaniumMangle.cpp [OPENMP50]Add initial support for OpenMP 5.0 iterator. 2020-04-02 08:28:15 -04:00
JSONNodeDumper.cpp [CodeGen] Emit destructor calls to destruct compound literals 2020-03-10 14:08:28 -07:00
Linkage.h [AST] Split parent map traversal logic into ParentMapContext.h 2020-01-24 13:42:28 -08:00
Mangle.cpp [hip] Revise `GlobalDecl` constructors. NFC. 2020-03-18 09:33:39 -04:00
MicrosoftCXXABI.cpp Separate the MS inheritance model enum from the attribute, NFC 2019-11-22 16:06:30 -08:00
MicrosoftMangle.cpp Add MS Mangling for OpenCL Pipe types, add mangling test. 2020-03-25 07:59:22 -07:00
NSAPI.cpp [OPENMP50]Add initial support for OpenMP 5.0 iterator. 2020-04-02 08:28:15 -04:00
NestedNameSpecifier.cpp [AST] rename DependencyFlags.h => DependenceFlags.h, NFC 2020-03-16 13:54:21 +01:00
ODRHash.cpp [Concepts] Placeholder constraints and abbreviated templates 2020-01-23 19:39:43 +02:00
OSLog.cpp os_log: Allow specifying mask type in format string. 2018-11-06 07:05:14 +00:00
OpenMPClause.cpp [OpenMP][NFC] Remove the need to include `OpenMPClause.h` 2020-04-03 13:27:52 -07:00
ParentMap.cpp [OPENMP]Fix PR42632: crash on the analysis of the OpenMP constructs. 2019-07-17 18:03:39 +00:00
ParentMapContext.cpp Remove clang::ast_type_traits namespace in favor of clang 2020-02-13 10:46:47 -08:00
PrintfFormatString.cpp [clang] Move branch-protection from CodeGenOptions to LangOptions 2020-04-02 10:31:52 +02:00
QualTypeNames.cpp Fix crash in getFullyQualifiedName for inline namespace 2019-12-28 16:35:51 +03:00
RawCommentList.cpp Avoid SourceManager.h include in RawCommentList.h, add missing incs 2020-02-27 13:49:40 -08:00
RecordLayout.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
RecordLayoutBuilder.cpp [AST] Fix a crash on invalid bitwidth exprs when preserving the recoveryexprs. 2020-03-30 10:52:00 +02:00
ScanfFormatString.cpp Fix parameter name comments using clang-tidy. NFC. 2019-07-16 04:46:31 +00:00
SelectorLocationsKind.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Stmt.cpp Support output constraints on "asm goto" 2020-02-24 18:51:29 -08:00
StmtCXX.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
StmtIterator.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
StmtObjC.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
StmtOpenMP.cpp [OPENMP50]Initial support for scan directive. 2020-03-20 07:58:15 -04:00
StmtPrinter.cpp [OPENMP50]Add initial support for OpenMP 5.0 iterator. 2020-04-02 08:28:15 -04:00
StmtProfile.cpp [OPENMP50]Add initial support for OpenMP 5.0 iterator. 2020-04-02 08:28:15 -04:00
StmtViz.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
TemplateBase.cpp [AST] rename DependencyFlags.h => DependenceFlags.h, NFC 2020-03-16 13:54:21 +01:00
TemplateName.cpp [AST] rename DependencyFlags.h => DependenceFlags.h, NFC 2020-03-16 13:54:21 +01:00
TextNodeDumper.cpp [OPENMP50]Add initial support for OpenMP 5.0 iterator. 2020-04-02 08:28:15 -04:00
Type.cpp [OPENMP50]Add initial support for OpenMP 5.0 iterator. 2020-04-02 08:28:15 -04:00
TypeLoc.cpp [OPENMP50]Add initial support for OpenMP 5.0 iterator. 2020-04-02 08:28:15 -04:00
TypePrinter.cpp [AST] Print a<b<c>> without extra spaces in C++11 or later. 2020-03-26 09:53:54 +01:00
VTTBuilder.cpp Silence static analyzer getAs<RecordType> null dereference warnings. NFCI. 2019-10-03 11:22:48 +00:00
VTableBuilder.cpp List implicit operator== after implicit destructors in a vtable. 2020-01-21 15:54:40 -08:00