diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2011-12-17 00:07:02 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2011-12-17 00:07:02 +0000 |
commit | 465cdf3ba47dbbf1c77cedc24346c61aee42c83e (patch) | |
tree | c082765abbb33adf587098d4c16b03880692c81d /llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp | |
parent | 518cda42b9dc8b8acb382ae3f49141985f706459 (diff) | |
download | bcm5719-llvm-465cdf3ba47dbbf1c77cedc24346c61aee42c83e.tar.gz bcm5719-llvm-465cdf3ba47dbbf1c77cedc24346c61aee42c83e.zip |
Preserve more memory operands in ARMExpandPseudo.
I don't think this affects anything but verbose assembly.
llvm-svn: 146787
Diffstat (limited to 'llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp')
-rw-r--r-- | llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp b/llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp index 01d772db593..588570fc8b2 100644 --- a/llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp +++ b/llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp @@ -631,6 +631,8 @@ void ARMExpandPseudo::ExpandLaneOp(MachineBasicBlock::iterator &MBBI) { // Add an implicit def for the super-register. MIB.addReg(DstReg, RegState::ImplicitDefine | getDeadRegState(DstIsDead)); TransferImpOps(MI, MIB, MIB); + // Transfer memoperands. + MIB->setMemRefs(MI.memoperands_begin(), MI.memoperands_end()); MI.eraseFromParent(); } @@ -1024,6 +1026,7 @@ bool ARMExpandPseudo::ExpandMI(MachineBasicBlock &MBB, // Add an implicit def for the super-register. MIB.addReg(DstReg, RegState::ImplicitDefine | getDeadRegState(DstIsDead)); TransferImpOps(MI, MIB, MIB); + MIB.setMemRefs(MI.memoperands_begin(), MI.memoperands_end()); MI.eraseFromParent(); return true; } @@ -1054,6 +1057,7 @@ bool ARMExpandPseudo::ExpandMI(MachineBasicBlock &MBB, MIB->addRegisterKilled(SrcReg, TRI, true); TransferImpOps(MI, MIB, MIB); + MIB.setMemRefs(MI.memoperands_begin(), MI.memoperands_end()); MI.eraseFromParent(); return true; } |