[PATCH] D37762: [InstCombine] Remove single use restriction from InstCombine's explicit sinking code.

Aditya Kumar via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 14 05:24:50 PDT 2018


hiraditya added a comment.

> Looks like machine sinking fails because it can't handle the cmovs reading eflags. And it only considers one instruction at a time, but to sink the cmov you have to sink the eflags producer and the cmov together.

I have been working on a global scheduling pass (https://reviews.llvm.org/D32140) which can help achieve this. What we need is a good cost model (reducing live range can be one) to drive the transformation.


https://reviews.llvm.org/D37762





More information about the llvm-commits mailing list