This is an archive of the discontinued LLVM Phabricator instance.

Avoid SourceManager.h include in RawCommentList.h, add missing incs
ClosedPublic

Authored by rnk on Feb 27 2020, 11:26 AM.

Details

Summary

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

Diff Detail

Event Timeline

rnk created this revision.Feb 27 2020, 11:26 AM
Herald added projects: Restricted Project, Restricted Project. · View Herald Transcript
hans accepted this revision.Feb 27 2020, 11:44 AM

Nice, lgtm!

This revision was not accepted when it landed; it landed in state Needs Review.Feb 27 2020, 1:59 PM
This revision was automatically updated to reflect the committed changes.