[PATCH] D45378: [InstCombine] Propagate null values from conditions to other basic blocks

Sanjay Patel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 11 09:19:22 PDT 2018


spatel added a comment.

In https://reviews.llvm.org/D45378#1060270, @xbolva00 wrote:

> In https://reviews.llvm.org/D45378#1060239, @spatel wrote:
>
> > This is pushing instcombine beyond local simplifications. Propagating values across blocks should probably be handled in CVP (-correlated-propagation).
>
>
> Maybe, but here it also fits, every info required for this transformation is available here.


I think it's been shown that every other pass could be subsumed by instcombine. That doesn't mean we should do that.

> Implementation of this optimization would probably be quite massive in the CorrelatedValuePropagation.

I was curious why that might be, so I wrote a patch. It's about the same amount of code as this patch, but more general. Please see if https://reviews.llvm.org/D45448 / https://reviews.llvm.org/rL329755 solved your motivating examples. If yes, I think you can abandon this patch.


https://reviews.llvm.org/D45378





More information about the llvm-commits mailing list