Xazax-hun wrote:

> After profiling further, I noticed one current bottleneck is in 
> handleImplicitObjectFieldUses, it accounts for ~1/2 samples in Lifetime 
> Safety Analysis right now (before is ~1/4 samples) for some files (e.g., 
> SemaExpr.cpp). This is because record types now have origins, so 
> handleImplicitObjectFieldUses builds origin trees for more fields and emits a 
> UseFact for each at every this->method() call site.

Thanks a lot for the analysis! This makes me believe the biggest win is to be 
lazy about creating origins for the fields! If we only created origins for the 
fields that are actually mentioned in the function I believe we would 
significantly cut down on this.

https://github.com/llvm/llvm-project/pull/195603
_______________________________________________
llvm-branch-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to