[PATCH] D120800: [MachineSink] Disable if there are any irreducible cycles

Nikita Popov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 3 04:10:46 PST 2022


nikic added a comment.

In D120800#3356741 <https://reviews.llvm.org/D120800#3356741>, @dmgreen wrote:

> Hello. This seems to be increasing codesize by quite a large amount in places at -Oz. Up to 9% in one case! (They tend to be machine-outliner related when they get that large). It seems to be increasing codesize in general, I would guess because having irreducible loops somewhere throughout a large function can be quite common.

Yes, having some irreducible control flow in a larger function is a problematic case for this approach. The alternatives to this change are D120330 <https://reviews.llvm.org/D120330> or a revert of D86864 <https://reviews.llvm.org/D86864>. I'm fine with any of these three three options myself.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D120800



More information about the llvm-commits mailing list