diff options
author | Tom Stellard <tstellar@redhat.com> | 2019-10-08 17:04:51 +0000 |
---|---|---|
committer | Tom Stellard <tstellar@redhat.com> | 2019-10-08 17:04:51 +0000 |
commit | 3a8d80944b7766449e2c8784a8fb30d19a2ba16c (patch) | |
tree | ce032ddc23d43a6459876ecd58c0ca378a60f7b3 /lldb/source/Plugins/ScriptInterpreter/Python | |
parent | fb8218f2525ae7b03a383b066929878d265d5ef3 (diff) | |
download | llvm-3a8d80944b7766449e2c8784a8fb30d19a2ba16c.zip llvm-3a8d80944b7766449e2c8784a8fb30d19a2ba16c.tar.gz llvm-3a8d80944b7766449e2c8784a8fb30d19a2ba16c.tar.bz2 |
AMDGPU: Add offsets to MMO when lowering buffer intrinsics
Summary:
Without offsets on the MachineMemOperands (MMOs),
MachineInstr::mayAlias() will return true for all reads and writes to the
same resource descriptor. This leads to O(N^2) complexity in the MachineScheduler
when analyzing dependencies of buffer loads and stores. It also limits
the SILoadStoreOptimizer from merging more instructions.
This patch reduces the compile time of one pathological compute shader
from 12 seconds to 1 second.
Reviewers: arsenm, nhaehnle
Reviewed By: arsenm
Subscribers: kzhuravl, jvesely, wdng, yaxunl, dstuttard, tpr, t-tye, hiraditya, jfb, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65097
llvm-svn: 374087
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python')
0 files changed, 0 insertions, 0 deletions