OSDN Git Service

[AMDGPU] Insert PS early exit at end of control flow
authorCarl Ritson <carl.ritson@amd.com>
Fri, 3 Jul 2020 03:25:33 +0000 (12:25 +0900)
committerCarl Ritson <carl.ritson@amd.com>
Fri, 3 Jul 2020 03:26:28 +0000 (12:26 +0900)
commit2bfcacf0ad362956277a1c2c9ba00ddc453a42ce
tree04c38dcec3d7b59a8a2fea450f1a4411ce0480dc
parenta3daa3f75a01101790f39fb9d52bf1f8824655c9
[AMDGPU] Insert PS early exit at end of control flow

Exit early if the exec mask is zero at the end of control flow.
Mark the ends of control flow during control flow lowering and
convert these to exits during the insert skips pass.

Reviewed By: nhaehnle

Differential Revision: https://reviews.llvm.org/D82737
llvm/lib/Target/AMDGPU/SIInsertSkips.cpp
llvm/lib/Target/AMDGPU/SIInstructions.td
llvm/lib/Target/AMDGPU/SILowerControlFlow.cpp
llvm/test/CodeGen/AMDGPU/kill-infinite-loop.ll
llvm/test/CodeGen/AMDGPU/skip-if-dead.ll