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

Reply via email to