[PATCH] D136565: [clang] Instantiate alias templates with sugar

Alexander Kornienko via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Nov 7 05:17:02 PST 2022


alexfh added a comment.

Hi Matheus, 279fe6281d2ca5b2318c7437316c28750feaac8d <https://reviews.llvm.org/rG279fe6281d2ca5b2318c7437316c28750feaac8d> causes compilation timeout on some of our internal files. We're trying to get a test case we can share, but so far the only information I can provide is compiler perf profile difference:

OK:

  3.08%  compiler.OK  compiler.OK         [.] llvm::FoldingSetBase::GrowBucketCount(unsigned int, llvm::FoldingSetBase::FoldingSet
  2.82%  compiler.OK  compiler.OK         [.] llvm::FoldingSetBase::FindNodeOrInsertPos(llvm::FoldingSetNodeID const&, void*&, llv
  2.32%  compiler.OK  compiler.OK         [.] llvm::FoldingSet<clang::ElaboratedType>::NodeEquals(llvm::FoldingSetBase const*, llv
  1.86%  compiler.OK  compiler.OK         [.] clang::Decl::castFromDeclContext(clang::DeclContext const*)
  1.61%  compiler.OK  compiler.OK         [.] clang::TypeLoc::getFullDataSizeForType(clang::QualType)
  1.56%  compiler.OK  compiler.OK         [.] clang::TypeLoc::getNextTypeLocImpl(clang::TypeLoc)
  1.47%  compiler.OK  compiler.OK         [.] clang::Sema::CheckTemplateArgumentList(clang::TemplateDecl*, clang::SourceLocation,

Bad:

  61.07%  compiler.bad  compiler.bad        [.] llvm::FoldingSet<clang::UsingType>::NodeEquals(llvm::FoldingSetBase const*, llvm::F
   8.14%  compiler.bad  compiler.bad        [.] clang::UsingType::Profile(llvm::FoldingSetNodeID&, clang::UsingShadowDecl const*, c
   3.63%  compiler.bad  compiler.bad        [.] llvm::FoldingSetBase::FindNodeOrInsertPos(llvm::FoldingSetNodeID const&, void*&, ll
   1.95%  compiler.bad  compiler.bad        [.] llvm::FoldingSetNodeID::operator==(llvm::FoldingSetNodeID const&) const
   0.69%  compiler.bad  compiler.bad        [.] llvm::FoldingSetBase::GrowBucketCount(unsigned int, llvm::FoldingSetBase::FoldingSe
   0.56%  compiler.bad  compiler.bad        [.] llvm::FoldingSet<clang::ElaboratedType>::NodeEquals(llvm::FoldingSetBase const*, ll
   0.49%  compiler.bad  compiler.bad        [.] clang::Sema::CheckTemplateArgumentList(clang::TemplateDecl*, clang::SourceLocation,


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D136565/new/

https://reviews.llvm.org/D136565



More information about the cfe-commits mailing list