[PATCH] D38566: [SimplifyCFG] don't sink common insts too soon (PR34603)

Hal Finkel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Dec 13 16:04:34 PST 2017


hfinkel added a comment.

In https://reviews.llvm.org/D38566#954011, @spatel wrote:

> Patch updated:
>
> 1. Removed the sinking option from the SimplifyCFG invocations that are part of the canonicalization phase.
> 2. Speculatively implemented what I suggested in the last comment - added a SimplifyCFG pass ahead of vectorization to allow the sinking transform (help the vectorizers by creating larger blocks with selects).


Thanks. I'm pretty sure that you want it after the loop vectorizer and before the SLP vectorizer. The reason is that the loop vectorizer does its own if conversion, and moreover, the selects on addresses tend to mess up vectorization (or, at least, I'm pretty sure that's what @craig.topper told me last month). Otherwise, I think this is good.


https://reviews.llvm.org/D38566





More information about the llvm-commits mailing list