[PATCH] D21941: AMDGPU: Set isConvergent on v_cmpx* instructions
Nicolai Hähnle via llvm-commits
llvm-commits at lists.llvm.org
Wed Jul 6 01:28:06 PDT 2016
nhaehnle added a subscriber: nhaehnle.
Comment at: lib/Target/AMDGPU/SIInstrInfo.td:2294
@@ -2293,1 +2293,3 @@
let SchedRW = sched;
+ let hasSideEffects = DefExec;
+ let isConvergent = DefExec;
> tstellarAMD wrote:
> > Why do we need to set hasSideEffects here?
> It seems like writing to exec should count as a side effect, although currently the realgar bit instruction manipulations will not have this set
I see that this is the case in some other places already, but I also doubt that it makes sense. As long as all instructions set (implicit) uses of exec correctly, hasSideEffects shouldn't be needed. Perhaps there's some fragility left with the control-flow annotation instructions, but then IMHO the right approach would be to fix that fragility.
Just my 2c...
More information about the llvm-commits