59 lines · plain
1# RUN: llc -mtriple=amdgcn-- -run-pass=print-machine-uniformity -o - %s 2>&1 | FileCheck %s2# RUN: llc -mtriple=amdgcn-- -passes='print<machine-uniformity>' -filetype=null %s 2>&1 | FileCheck %s3# CHECK-LABEL: MachineUniformityInfo for function: @test4 5# CHECK-LABEL: BLOCK bb.06# CHECK: DIVERGENT: %{{[0-9]*}}: %{{[0-9]*}}:_(s1) = G_ICMP intpred(eq), %{{[0-9]*}}:_(s32), %{{[0-9]*}}:_7 8# CHECK-LABEL: BLOCK bb.19# CHECK-NOT: DIVERGENT: %{{[0-9]*}}: %{{[0-9]*}}:_(s32) = G_PHI %{{[0-9]*}}:_(s32), %bb.0, %{{[0-9]*}}:_(s32), %bb.210# CHECK: DIVERGENT: G_BRCOND %{{[0-9]*}}:_(s1), %bb.311 12# CHECK-LABEL: BLOCK bb.213# CHECK-NOT: DIVERGENT: %{{[0-9]*}}: %{{[0-9]*}}:_(s32), %{{[0-9]*}}:_(s1) = G_UADDO_14# CHECK-NOT: DIVERGENT: G_BRCOND %{{[0-9]*}}:_(s1), %bb.315 16# CHECK-LABEL: BLOCK bb.317# CHECK: DIVERGENT: %{{[0-9]*}}: %{{[0-9]*}}:_(s1) = G_PHI %{{[0-9]*}}:_(s1), %bb.1, %{{[0-9]*}}:_(s1), %bb.218# CHECK: DIVERGENT: G_BRCOND %{{[0-9]*}}:_(s1), %bb.419# CHECK: DIVERGENT: G_BR %bb.520 21---22name: test23tracksRegLiveness: true24body: |25 bb.0:26 successors: %bb.127 28 %2:_(s1) = G_CONSTANT i1 true29 %3:_(s1) = G_CONSTANT i1 false30 %1:_(s32) = G_CONSTANT i32 031 %20:_(s32) = G_CONSTANT i32 732 %5:_(s32) = G_CONSTANT i32 -133 %4:_(s32) = G_INTRINSIC intrinsic(@llvm.amdgcn.workitem.id.x)34 %6:_(s1) = G_ICMP intpred(eq), %4(s32), %535 36 bb.1:37 successors: %bb.2, %bb.338 39 %8:_(s32) = G_PHI %20(s32), %bb.0, %21(s32), %bb.240 G_BRCOND %6(s1), %bb.3 ; Entrance to loop is divergent41 bb.2:42 successors: %bb.3, %bb.143 44 %21:_(s32), %22:_(s1) = G_UADDO %8, %545 %23:_(s1) = G_ICMP intpred(eq), %21(s32), %146 G_BRCOND %23(s1), %bb.347 G_BR %bb.148 49 bb.3:50 %31:_(s1) = G_PHI %2(s1), %bb.1, %3(s1), %bb.251 S_ENDPGM 052 G_BRCOND %31(s1), %bb.453 G_BR %bb.554 bb.4:55 G_BR %bb.556 bb.5:57 58...59