[PATCH] D73815: AMDGPU: Fix divergence analysis of control flow intrinsics

Alexander via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 4 07:54:45 PST 2020


alex-t added a comment.

I agree that current expensive walk on IR should be removed. 
I initially consider it as a temporary solution that allows to switch to the new concept 
of assignment correct register classes keeping in mind to eventually find another way to workaround CF results exceptions.

What I conceptually don't like here is mixing the "divergence" and register class notions.
The mask produced by the CF intrinsics is always scalar - not same as always uniform.
The isAlwaysUniform is queried by the DA in the divergence propagation.
I'm afraid we can get some subtle bugs claiming CF intrinsic  "result 1" always uniform.
Although I cannot yet provide any example to illustrate my concerns.

I would suggest to run extended testing: MESA tests, BLAS tests.... something else that is tremendous enough.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D73815/new/

https://reviews.llvm.org/D73815





More information about the llvm-commits mailing list