summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target
diff options
context:
space:
mode:
authorTim Renouf <tpr.llvm@botech.co.uk>2019-08-13 18:57:55 +0000
committerTim Renouf <tpr.llvm@botech.co.uk>2019-08-13 18:57:55 +0000
commit10db641aabf059eb9acf9f7649a9c1cc21955b59 (patch)
tree18ef3ae6218d7f7c1d9c69cc0584a91eef08a595 /llvm/lib/Target
parentfc76d8551f54e0a8b99306741d6d818b90334d6a (diff)
downloadbcm5719-llvm-10db641aabf059eb9acf9f7649a9c1cc21955b59.tar.gz
bcm5719-llvm-10db641aabf059eb9acf9f7649a9c1cc21955b59.zip
[AMDGPU] Fix to 'Fold readlane from copy of SGPR or imm'
That change (r363670) could leave a copy from vgpr to sgpr. Fixed. Differential Revision: https://reviews.llvm.org/D66133 Change-Id: I00c3fe6fda2e8e1e36f53195b881b1449c777ea4 llvm-svn: 368736
Diffstat (limited to 'llvm/lib/Target')
-rw-r--r--llvm/lib/Target/AMDGPU/SIFoldOperands.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Target/AMDGPU/SIFoldOperands.cpp b/llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
index 1b6981121f8..ca8448ab674 100644
--- a/llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
+++ b/llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
@@ -676,6 +676,9 @@ void SIFoldOperands::foldOperand(
// =>
// %sgpr1 = COPY %sgpr0
UseMI->setDesc(TII->get(AMDGPU::COPY));
+ UseMI->getOperand(1).setReg(OpToFold.getReg());
+ UseMI->getOperand(1).setSubReg(OpToFold.getSubReg());
+ UseMI->getOperand(1).setIsKill(false);
UseMI->RemoveOperand(2); // Remove exec read (or src1 for readlane)
return;
}
OpenPOWER on IntegriCloud