[PATCH] D17429: Don't mark convergent instructions as trivially rematerializable.
Justin Lebar via llvm-commits
llvm-commits at lists.llvm.org
Thu Feb 18 21:11:28 PST 2016
jlebar added a comment.
In http://reviews.llvm.org/D17429#356746, @resistor wrote:
> My targets have convergent instructions that are rematerializable.
Interesting.
Are they *trivially* rematerializable? The documentation says a trivially-rematerializable instr must have no side-effects and must have the same effect wherever it's placed in the function. But if you can move the instruction wherever you want, then in particular you can add a control-flow dependency, which is what's specifically disallowed by convergence.
Maybe the documentation needs to be updated? I admit that I don't yet have a non-superficial understanding of what this is *used* for.
http://reviews.llvm.org/D17429
More information about the llvm-commits
mailing list