ChuanqiXu9 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...
That sounds like a good idea too. 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