vgvassilev wrote: > > do we store all template variable specializations in the same place in the > > map including the partial ones? > > Yes, we identify if they are partial by an additional bit. > > For the solution, given there might be other places need to load the > specializations, how about removing the `OnlyPartial` part in > `ASTReader::LoadExternalSpecializations(const Decl *D, bool OnlyPartial)`. So > that although we have to call `findAll` in some cases, we won't call > `findAll` again and again. We can remove the iterator after the first call.
We can probably split the partial ones from the others as they will probably be far less and iterating should be faster... I suspect we should somehow record if the partials were read the first time and don't decent into the map again... https://github.com/llvm/llvm-project/pull/83237 _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits