[InstCombine] Signed saturation patterns
[llvm-core.git] / test / Analysis / LegacyDivergenceAnalysis / AMDGPU / unreachable-loop-block.ll
blob7ade8eabd451b52349cee970c03876fd9879e559
1 ; RUN: opt %s -mtriple amdgcn-- -analyze -divergence | FileCheck %s
3 ; CHECK: DIVERGENT:  %tmp = cmpxchg volatile
4 define amdgpu_kernel void @unreachable_loop(i32 %tidx) #0 {
5 entry:
6   unreachable
8 unreachable_loop:                                        ; preds = %do.body.i, %if.then11
9   %tmp = cmpxchg volatile i32 addrspace(1)* null, i32 0, i32 0 seq_cst seq_cst
10   %cmp.i = extractvalue { i32, i1 } %tmp, 1
11   br i1 %cmp.i, label %unreachable_loop, label %end
13 end:                                      ; preds = %do.body.i51, %atomicAdd_g_f.exit
14   unreachable
17 attributes #0 = { norecurse nounwind }