[PATCH] D101468: [Passes] Run sinking/hoisting in SimplifyCFG earlier.

Roman Lebedev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 28 10:01:58 PDT 2021


lebedev.ri added a comment.

In D101468#2723180 <https://reviews.llvm.org/D101468#2723180>, @nikic wrote:

> Thanks! I like this a lot more than the LoopVectorize variant. I also think it makes sense that this happens at the end of the "function simplification" pipeline, which means that the inliner will see the hoisted/sunk IR, which should result in a more accurate cost (as sinkable/hoistable instructions will not be counted multiple times).

Nonono, this is actually the opposite from what should happen.
We will then over-inline, and grow the size even more.

Do we have any simplifycfg run before LV but after inliner?

> It might make sense to do this even earlier, as I suspect that passes like GVN would also benefit from hoisted/sunk IR. But this looks like a reasonable starting point, at least to me.




Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D101468



More information about the llvm-commits mailing list