diff options
author | Vincent Lejeune <vljn@ovi.com> | 2013-07-31 19:31:41 +0000 |
---|---|---|
committer | Vincent Lejeune <vljn@ovi.com> | 2013-07-31 19:31:41 +0000 |
commit | 21de8baa156e4a0a76aadf1472f6d1ae16a55922 (patch) | |
tree | b5cab1ee2dc7d9d26285ac358fa19a4506fdfb95 /llvm/lib/Target/R600/R600Packetizer.cpp | |
parent | 79afe17e991a468d64aeb5d39826e378903f0fd5 (diff) | |
download | bcm5719-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.cpp | 4 |
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; } |