OSDN Git Service

Revert "AMDGPU: Re-do update for branch-relaxation test"
authorTobias Grosser <tobias@grosser.es>
Thu, 2 Mar 2017 21:47:51 +0000 (21:47 +0000)
committerTobias Grosser <tobias@grosser.es>
Thu, 2 Mar 2017 21:47:51 +0000 (21:47 +0000)
This commit also relied on r296812, which I just reverted. We should probably
apply it again, after the r296812 has been discussed and been reapplied in some
variant.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@296820 91177308-0d34-0410-b5e6-96231b3b80d8

test/CodeGen/AMDGPU/branch-relaxation.ll

index 9d3afc2..18bbc3e 100644 (file)
@@ -430,16 +430,17 @@ endif:
 ; GCN-NEXT: s_and_saveexec_b64 [[MASK:s\[[0-9]+:[0-9]+\]]], vcc
 ; GCN-NEXT: s_xor_b64 [[MASK]], exec, [[MASK]]
 ; GCN-NEXT: ; mask branch [[RET:BB[0-9]+_[0-9]+]]
-; GCN-NEXT: s_cbranch_execnz [[LOOP_BODY:BB[0-9]+_[0-9]+]]
+; GCN-NEXT: s_cbranch_execz [[BRANCH_SKIP:BB[0-9]+_[0-9]+]]
+; GCN-NEXT: s_branch [[LOOP_BODY:BB[0-9]+_[0-9]+]]
 
-; GCN-NEXT: [[BRANCH_SKIP:BB[0-9]+_[0-9]+]]: ; %entry
+; GCN-NEXT: [[BRANCH_SKIP]]: ; %entry
 ; GCN-NEXT: s_getpc_b64 vcc
 ; GCN-NEXT: s_add_u32 vcc_lo, vcc_lo, [[RET]]-([[BRANCH_SKIP]]+4)
 ; GCN-NEXT: s_addc_u32 vcc_hi, vcc_hi, 0
 ; GCN-NEXT: s_setpc_b64 vcc
 
 ; GCN-NEXT: [[LOOP_BODY]]: ; %loop_body
-
+; GCN: s_mov_b64 vcc, -1{{$}}
 ; GCN: ;;#ASMSTART
 ; GCN: v_nop_e64
 ; GCN: v_nop_e64
@@ -448,6 +449,7 @@ endif:
 ; GCN: v_nop_e64
 ; GCN: v_nop_e64
 ; GCN: ;;#ASMEND
+; GCN-NEXT: s_cbranch_vccz [[RET]]
 
 ; GCN-NEXT: [[LONGBB:BB[0-9]+_[0-9]+]]: ; %loop_body
 ; GCN-NEXT: ; in Loop: Header=[[LOOP_BODY]] Depth=1
@@ -456,7 +458,7 @@ endif:
 ; GCN-NEXT: s_subb_u32 vcc_hi, vcc_hi, 0
 ; GCN-NEXT: s_setpc_b64 vcc
 
-; GCN-NEXT: BB{{[0-9]+_[0-9]+}}: ; %ret
+; GCN-NEXT: [[RET]]: ; %Flow
 ; GCN-NEXT: s_or_b64 exec, exec, [[MASK]]
 ; GCN: buffer_store_dword
 ; GCN-NEXT: s_endpgm
@@ -468,11 +470,6 @@ entry:
 
 loop:
   %phi = phi float [ 0.000000e+00, %loop_body ], [ 1.000000e+00, %entry ]
-  call void @llvm.amdgcn.s.sleep(i32 0)
-  call void @llvm.amdgcn.s.sleep(i32 0)
-  call void @llvm.amdgcn.s.sleep(i32 0)
-  call void @llvm.amdgcn.s.sleep(i32 0)
-  call void @llvm.amdgcn.s.sleep(i32 0)
   call void asm sideeffect
     "v_nop_e64
      v_nop_e64", ""() #0