mizvekov wrote: > Thank you for tackling this longstanding issue! How much does saving this > extra state add to the runtime and memory usage on a template-heavy > compilation?
I tried building stdexec, the difference is within the noise. Do you have any other examples of template-heavy code in mind? > If the cost is concerning, one other option we could consider here would be > performing pending local instantiations eagerly when we reach the end of a > region in which we have a context note -- that'd mean we don't need to save > state for later. That's subtly behavior changing because it will pick an > earlier point of instantiation for those local instantiations, but it's a > permitted point of instantiation; we could try it and see if it works well > enough in practice. We could also delay implicit definitions of special > members like we do for template instantiations to reduce the impact. Sounds worth a try, if we can find any concerns. https://github.com/llvm/llvm-project/pull/125453 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits