summaryrefslogtreecommitdiff
path: root/lib/CodeGen/CriticalAntiDepBreaker.cpp
diff options
context:
space:
mode:
authorAndrew Trick <atrick@apple.com>2011-02-05 02:58:46 +0000
committerAndrew Trick <atrick@apple.com>2011-02-05 02:58:46 +0000
commit278ba1f9b6c14ddf79040979c88b978d41f8c036 (patch)
tree186546a07febe7fbbb1a2e7fb4b7cd388a545ace /lib/CodeGen/CriticalAntiDepBreaker.cpp
parenta818d031d5eef10b4edaaeb9a8455cc13920b09d (diff)
downloadllvm-278ba1f9b6c14ddf79040979c88b978d41f8c036.tar.gz
llvm-278ba1f9b6c14ddf79040979c88b978d41f8c036.tar.bz2
llvm-278ba1f9b6c14ddf79040979c88b978d41f8c036.tar.xz
Fix an anti-dep breaker corner case.
<rdar://problem/8959122> illegal register operands for UMULL instruction in cfrac nightly test I'm stil working on a unit test, but the case is: rx = movcc rx, r3 r2 = ldr r2, r3 = umull r2, r2 The anti-dep breaker should not convert this into an illegal instruction: r2, r2 = umull git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124932 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CriticalAntiDepBreaker.cpp')
-rw-r--r--lib/CodeGen/CriticalAntiDepBreaker.cpp1
1 files changed, 0 insertions, 1 deletions
diff --git a/lib/CodeGen/CriticalAntiDepBreaker.cpp b/lib/CodeGen/CriticalAntiDepBreaker.cpp
index 4817346061..7b2ce36241 100644
--- a/lib/CodeGen/CriticalAntiDepBreaker.cpp
+++ b/lib/CodeGen/CriticalAntiDepBreaker.cpp
@@ -334,7 +334,6 @@ CriticalAntiDepBreaker::isNewRegModifiedByRefs(RegRefIter RegRefBegin,
{
for (RegRefIter I = RegRefBegin; I != RegRefEnd; ++I ) {
MachineOperand *MO = I->second;
- if (MO->isDef()) continue;
if (MO->getParent()->modifiesRegister(NewReg, TRI))
return true;
}