diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2010-07-10 22:42:53 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2010-07-10 22:42:53 +0000 |
commit | ad89613b650f8f043bfaa46eecc477809772623a (patch) | |
tree | b82e0340144bf2fbd38133fc7b030bb399b51412 /llvm/lib | |
parent | a64a3235649f3511e6b93bb20939ec7feeced4c4 (diff) | |
download | bcm5719-llvm-ad89613b650f8f043bfaa46eecc477809772623a.tar.gz bcm5719-llvm-ad89613b650f8f043bfaa46eecc477809772623a.zip |
Only collect subreg extracting copies for later coalescing.
This also avoids fatal copies from physregs.
llvm-svn: 108061
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/CodeGen/TwoAddressInstructionPass.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/TwoAddressInstructionPass.cpp b/llvm/lib/CodeGen/TwoAddressInstructionPass.cpp index 00dec66dcaf..681473ba795 100644 --- a/llvm/lib/CodeGen/TwoAddressInstructionPass.cpp +++ b/llvm/lib/CodeGen/TwoAddressInstructionPass.cpp @@ -1434,7 +1434,7 @@ bool TwoAddressInstructionPass::EliminateRegSequences() { IsImpDef = false; // Remember COPY sources. These might be candidate for coalescing. - if (DefMI->isCopy()) + if (DefMI->isCopy() && DefMI->getOperand(1).getSubReg()) RealSrcs.push_back(DefMI->getOperand(1).getReg()); if (!Seen.insert(SrcReg) || |