[PATCH] D18162: AMDGPU: Add SIWholeQuadMode pass

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 21 10:55:12 PDT 2016


arsenm added a comment.

In http://reviews.llvm.org/D18162#378648, @nhaehnle wrote:

> Thanks for the feedback Tom. I'll work in those changes before I commit.
>
> Matt, I'm not sure "convergent" really captures the properties. In practice, I doubt it's a problem because the relevant instructions define EXEC - as far as I can tell, this means they're left alone by the passes that care about convergence, because EXEC is a physical register.


It's more likely to be a problem for the corresponding IR intrinsics

In http://reviews.llvm.org/D18162#378751, @nhaehnle wrote:

> Ah okay. There are two intrinsic (types) related to all this:
>
> 1. The kill intrinsic. This is marked as having side effects, which I think should imply convergent.


Side effects do not imply convergent

> 

> 

> 2. The load / store / atomic intrinsics. They themselves don't involve derivatives. If their results are used in a derivative computation, then it is sufficient to ensure that they are always executed when the consumer is executed, but that automatically follows from plain data flow (just like any other normal computations).


It shouldn't be necessary for these


http://reviews.llvm.org/D18162





More information about the llvm-commits mailing list