summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/R600/R600Packetizer.cpp
diff options
context:
space:
mode:
authorVincent Lejeune <vljn@ovi.com>2013-07-31 19:31:41 +0000
committerVincent Lejeune <vljn@ovi.com>2013-07-31 19:31:41 +0000
commit21de8baa156e4a0a76aadf1472f6d1ae16a55922 (patch)
treeb5cab1ee2dc7d9d26285ac358fa19a4506fdfb95 /llvm/lib/Target/R600/R600Packetizer.cpp
parent79afe17e991a468d64aeb5d39826e378903f0fd5 (diff)
downloadbcm5719-llvm-21de8baa156e4a0a76aadf1472f6d1ae16a55922.tar.gz
bcm5719-llvm-21de8baa156e4a0a76aadf1472f6d1ae16a55922.zip
R600: Don't mix LDS and non-LDS instructions in the same group
There are a lot of restrictions on instruction groups that contain LDS instructions, so for now we will be conservative and not packetize anything else with them. llvm-svn: 187513
Diffstat (limited to 'llvm/lib/Target/R600/R600Packetizer.cpp')
-rw-r--r--llvm/lib/Target/R600/R600Packetizer.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/R600/R600Packetizer.cpp b/llvm/lib/Target/R600/R600Packetizer.cpp
index f4219bd476c..5cf1fd3b665 100644
--- a/llvm/lib/Target/R600/R600Packetizer.cpp
+++ b/llvm/lib/Target/R600/R600Packetizer.cpp
@@ -161,6 +161,10 @@ public:
return true;
if (MI->getOpcode() == AMDGPU::GROUP_BARRIER)
return true;
+ // XXX: This can be removed once the packetizer properly handles all the
+ // LDS instruction group restrictions.
+ if (TII->isLDSInstr(MI->getOpcode()))
+ return true;
return false;
}
OpenPOWER on IntegriCloud