[PATCH] D113939: [runtime-unroll] Remove restriction about unrolling multiple exit loops

Nikita Popov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Nov 28 13:42:26 PST 2021


nikic added a comment.

As suspected, this has significant impact on code size even on CTMark: https://llvm-compile-time-tracker.com/compare.php?from=3608e18a946e77a474a468304b6c3904c55dbce0&to=71597b63b6b5e2c180f8417a7809d94637209c72&stat=size-text sqlite3 regresses by more than 2% and and SPASS with ThinLTO regresses by more than 3%. This is very likely not a good optimization tradeoff, especially for non-benchmarky applications (aka most of the code out there). I think we'll have to improve our heuristics or cost modelling if we want to enable this unconditionally.

There is compile-time impact as well, but I think it is directly related to the large code size increases: https://llvm-compile-time-tracker.com/compare.php?from=3608e18a946e77a474a468304b6c3904c55dbce0&to=71597b63b6b5e2c180f8417a7809d94637209c72&stat=instructions


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D113939/new/

https://reviews.llvm.org/D113939



More information about the llvm-commits mailing list