summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
diff options
context:
space:
mode:
authorTom Stellard <thomas.stellard@amd.com>2016-12-07 02:42:15 +0000
committerTom Stellard <thomas.stellard@amd.com>2016-12-07 02:42:15 +0000
commit8485fa096e0baf95790a8b1ba7f8ea8806f50a3e (patch)
tree4571875722107bcf446cf548964cfc23a39b08e7 /llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
parent2f50fef095298706e7dbe1f47b7d9421c74a790b (diff)
downloadbcm5719-llvm-8485fa096e0baf95790a8b1ba7f8ea8806f50a3e.tar.gz
bcm5719-llvm-8485fa096e0baf95790a8b1ba7f8ea8806f50a3e.zip
AMDGPU : Add S_SETREG instructions to fix fdiv precision issues.
Patch By: Wei Ding Summary: This patch fixes the fdiv precision issues. Reviewers: b-sumner, cfang, wdng, arsenm Subscribers: kzhuravl, nhaehnle, yaxunl, tony-tye Differential Revision: https://reviews.llvm.org/D26424 llvm-svn: 288879
Diffstat (limited to 'llvm/lib/Target/AMDGPU/SIInstrInfo.cpp')
-rw-r--r--llvm/lib/Target/AMDGPU/SIInstrInfo.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Target/AMDGPU/SIInstrInfo.cpp b/llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
index d05ef38be7e..9071ded6567 100644
--- a/llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
+++ b/llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
@@ -1669,6 +1669,8 @@ bool SIInstrInfo::isSchedulingBoundary(const MachineInstr &MI,
// boundaries prevents incorrect movements of such instructions.
return TargetInstrInfo::isSchedulingBoundary(MI, MBB, MF) ||
MI.modifiesRegister(AMDGPU::EXEC, &RI) ||
+ MI.getOpcode() == AMDGPU::S_SETREG_IMM32_B32 ||
+ MI.getOpcode() == AMDGPU::S_SETREG_B32 ||
changesVGPRIndexingMode(MI);
}
OpenPOWER on IntegriCloud