diff options
author | Nicolai Haehnle <nhaehnle@gmail.com> | 2016-07-06 08:35:17 +0000 |
---|---|---|
committer | Nicolai Haehnle <nhaehnle@gmail.com> | 2016-07-06 08:35:17 +0000 |
commit | e40530ea7b594d80decb6feca902f02cc9d620f6 (patch) | |
tree | b4b163f417a68a05096f637aa5c0407f01126850 /llvm/test | |
parent | 971fbfda1ed184a7a515d5d8d8e42d840756cd34 (diff) | |
download | bcm5719-llvm-e40530ea7b594d80decb6feca902f02cc9d620f6.tar.gz bcm5719-llvm-e40530ea7b594d80decb6feca902f02cc9d620f6.zip |
AMDGPU: Fix return of non-void-returning shaders
Summary:
Since "AMDGPU: Fix verifier errors in SILowerControlFlow", the logic that
ensures that a non-void-returning shader falls off the end of the last
basic block was effectively disabled, since SI_RETURN is now used.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96731
Reviewers: arsenm, tstellarAMD
Subscribers: arsenm, kzhuravl, llvm-commits
Differential Revision: http://reviews.llvm.org/D21975
llvm-svn: 274612
Diffstat (limited to 'llvm/test')
-rw-r--r-- | llvm/test/CodeGen/AMDGPU/ret_jump.ll | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/test/CodeGen/AMDGPU/ret_jump.ll b/llvm/test/CodeGen/AMDGPU/ret_jump.ll index 1e1a757ec51..f7380cd9692 100644 --- a/llvm/test/CodeGen/AMDGPU/ret_jump.ll +++ b/llvm/test/CodeGen/AMDGPU/ret_jump.ll @@ -12,10 +12,11 @@ ; GCN-NEXT: ; mask branch [[UNREACHABLE_BB:BB[0-9]+_[0-9]+]] ; GCN: [[RET_BB]]: -; GCN-NEXT: ; return +; GCN-NEXT: s_branch [[FINAL_BB:BB[0-9]+_[0-9]+]] ; GCN-NEXT: [[UNREACHABLE_BB]]: ; GCN-NEXT: s_or_b64 exec, exec, [[XOR_EXEC]] +; GCN-NEXT: [[FINAL_BB]]: ; GCN-NEXT: .Lfunc_end0 define amdgpu_ps <{ i32, i32, i32, i32, i32, i32, i32, i32, i32, float, float, float, float, float, float, float, float, float, float, float, float, float, float }> @main([9 x <16 x i8>] addrspace(2)* byval, [17 x <16 x i8>] addrspace(2)* byval, [17 x <8 x i32>] addrspace(2)* byval, i32 addrspace(2)* byval, float inreg, i32 inreg, <2 x i32>, <2 x i32>, <2 x i32>, <3 x i32>, <2 x i32>, <2 x i32>, <2 x i32>, float, float, float, float, float, i32, i32, float, i32) #0 { main_body: |