]> granicus.if.org Git - llvm/commit
[AMDGPU] Turn s_and_saveexec_b64 into s_and_b64 if result is unused
authorStanislav Mekhanoshin <Stanislav.Mekhanoshin@amd.com>
Tue, 1 Aug 2017 23:44:35 +0000 (23:44 +0000)
committerStanislav Mekhanoshin <Stanislav.Mekhanoshin@amd.com>
Tue, 1 Aug 2017 23:44:35 +0000 (23:44 +0000)
commit3499304a9a9a5dc69e2cd3831556f3673db40206
treecb8997852296c8de410c25020d377805a136d0c0
parent88d9e5d614786cd51312d68582c025b4bcd045fb
[AMDGPU] Turn s_and_saveexec_b64 into s_and_b64 if result is unused

With SI_END_CF elimination for some nested control flow we can now
eliminate saved exec register completely by turning a saveexec version
of instruction into just a logical instruction.

Differential Revision: https://reviews.llvm.org/D36007

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@309766 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/AMDGPU/SIOptimizeExecMasking.cpp
lib/Target/AMDGPU/SIOptimizeExecMaskingPreRA.cpp
test/CodeGen/AMDGPU/collapse-endcf.ll
test/CodeGen/AMDGPU/reduce-saveexec.mir [new file with mode: 0644]