diff options
| author | Matt Arsenault <Matthew.Arsenault@amd.com> | 2017-02-22 21:16:41 +0000 |
|---|---|---|
| committer | Matt Arsenault <Matthew.Arsenault@amd.com> | 2017-02-22 21:16:41 +0000 |
| commit | 93e65ea733b2450e41d787d3f597fa8ccdfa23f0 (patch) | |
| tree | b4c61c73da95f110344765dbd24fa630f68fd4be /llvm/lib | |
| parent | 707780b420621b6c3b4b8e3e17f52634406fdf1b (diff) | |
| download | bcm5719-llvm-93e65ea733b2450e41d787d3f597fa8ccdfa23f0.tar.gz bcm5719-llvm-93e65ea733b2450e41d787d3f597fa8ccdfa23f0.zip | |
AMDGPU: Don't look at chain users when adjusting writemask
Fixes not adjusting using new intrinsics with chains.
llvm-svn: 295878
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/Target/AMDGPU/SIISelLowering.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/AMDGPU/SIISelLowering.cpp b/llvm/lib/Target/AMDGPU/SIISelLowering.cpp index 83ee856b4fe..7243b813d62 100644 --- a/llvm/lib/Target/AMDGPU/SIISelLowering.cpp +++ b/llvm/lib/Target/AMDGPU/SIISelLowering.cpp @@ -4487,6 +4487,10 @@ void SITargetLowering::adjustWritemask(MachineSDNode *&Node, for (SDNode::use_iterator I = Node->use_begin(), E = Node->use_end(); I != E; ++I) { + // Don't look at users of the chain. + if (I.getUse().getResNo() != 0) + continue; + // Abort if we can't understand the usage if (!I->isMachineOpcode() || I->getMachineOpcode() != TargetOpcode::EXTRACT_SUBREG) |

