[llvm] [Coro] Amortize debug info processing cost in CoroSplit (PR #109032)
Artem Pianykh via llvm-commits
llvm-commits at lists.llvm.org
Fri Sep 27 03:52:00 PDT 2024
artempyanykh wrote:
> This sounds like generally a good idea and the implementation looks clean as well.
Thanks for reviewing @adrian-prantl!
> What are the behavior changes we expect from this patch series?
* I expect no functional changes, only faster compile times for C++ code with coroutines.
* The new DebugInfoCache analysis is not conditioned on the presence of coroutines in a module but it's fast and the analysis results can be used to speed up function cloning in other places than just coroutines.
* I ran a compile time benchmark on a few thousand internal source files:
* There were no perf regressions, code without coroutines had neutral perf impact.
* Source files that use coroutines compiled 7% faster on avg, but there were many cases where it was 25%, 50% and even 65% faster. The larger the module is and the more coroutine it has, the greater the speed up.
https://github.com/llvm/llvm-project/pull/109032
More information about the llvm-commits
mailing list