[PATCH] D150861: [AMDGPU][Uniformity] SI_IF and SI_ELSE pseudos are always divergent
Ruiling, Song via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu May 18 18:55:26 PDT 2023
ruiling added inline comments.
================
Comment at: llvm/test/Analysis/UniformityAnalysis/AMDGPU/MIR/control-flow-intrinsics.mir:33
+ ; CHECK: DIVERGENT: {{.*}} SI_ELSE
+ %2:sreg_64 = SI_ELSE %1, %bb.2, implicit-def $exec, implicit-def $scc, implicit $exec
+
----------------
Although we do not have formal specification for the IF/ELSE instructions, I still prefer to see the tests are written using the well-formed pattern. that is SI_IF/SI_END_CF and SI_IF/SI_ELSE/SI_END_CF. My original concern over the SI_IF/SI_ELSE should be divergent is for the case that PHI node in merge block should be divergent(aka. sync depends on the branch). I would like this be covered in the tests.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D150861/new/
https://reviews.llvm.org/D150861
More information about the llvm-commits
mailing list