[PATCH] D35584: [CGP] Fold empty dedicated exit blocks created by loopsimplify.

Balaram Makam via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 8 10:00:49 PDT 2017

bmakam added a comment.

In https://reviews.llvm.org/D35584#829791, @efriedma wrote:

> To clarify, the original version of this patch recovered the full 3% regression, but the new version only recovers 0.7%?


> Is the actual value of the PHI operand relevant here?  It looks like some of the testcases on r289988 involve constants, which are materialized during isel (and can be substantially more expensive).

Thanks Eli, this looks interesting. Another observation is that if we increase cgp-freq-ratio-to-skip-merge to 1000 it will recover the full 3% regression. I am trying to reduce the exact basic block which when skipped merging in CGP removes placing copies in hot path and improves performance due to reduced dynamic instruction count and the basic block(s) which when merged eliminate the unnecessary branches and improve the performance due to better branching/i-cache utilization. This might provide an answer to your question about the relevance of PHI operands.


More information about the llvm-commits mailing list