aboutsummaryrefslogtreecommitdiff
path: root/llvm/unittests/ADT/ArrayRefTest.cpp
diff options
context:
space:
mode:
authorTim Renouf <tpr.llvm@botech.co.uk>2019-01-23 13:38:06 +0000
committerTim Renouf <tpr.llvm@botech.co.uk>2019-01-23 13:38:06 +0000
commitf64f8efe13c637dc560c9208e09f8460683b3543 (patch)
tree095b9fec34f114810d54b5010b5045dec612df25 /llvm/unittests/ADT/ArrayRefTest.cpp
parent53c3c2c61c3c8dc4d6d2c463e0a2357eb312bd51 (diff)
downloadllvm-f64f8efe13c637dc560c9208e09f8460683b3543.zip
llvm-f64f8efe13c637dc560c9208e09f8460683b3543.tar.gz
llvm-f64f8efe13c637dc560c9208e09f8460683b3543.tar.bz2
[AMDGPU] With XNACK, cannot clause a load with result coalesced with operand
Summary: With XNACK, an smem load whose result is coalesced with an operand (thus it overwrites its own operand) cannot appear in a clause, because some other instruction might XNACK and restart the whole clause. The clause breaker already realized that an smem that overwrites an operand cannot appear in a clause, and broke the clause. The problem that this commit fixes is that the SIFormMemoryClauses optimization formed a bundle with early clobber, which caused the earlier code that set up the coalesced operand to be removed as dead. Differential Revision: https://reviews.llvm.org/D57008 Change-Id: I703c4d5b0bf7d6060222bec491f45c18bb3c0016 llvm-svn: 351950
Diffstat (limited to 'llvm/unittests/ADT/ArrayRefTest.cpp')
0 files changed, 0 insertions, 0 deletions