Index: lib/Target/ARM/ARMFrameLowering.cpp |
diff --git a/lib/Target/ARM/ARMFrameLowering.cpp b/lib/Target/ARM/ARMFrameLowering.cpp |
index 4f3012e9aafc8baebc933efb9ab09274a733dd5b..2ed0e26dce4041ba0467e43e1155346dc15a8dde 100644 |
--- a/lib/Target/ARM/ARMFrameLowering.cpp |
+++ b/lib/Target/ARM/ARMFrameLowering.cpp |
@@ -970,7 +970,8 @@ void ARMFrameLowering::emitPopInst(MachineBasicBlock &MBB, |
continue; |
if (Reg == ARM::LR && !isTailCall && !isVarArg && !isInterrupt && |
- STI.hasV5TOps()) { |
+ STI.hasV5TOps() && |
+ !STI.isTargetNaCl() /* @LOCALMOD */) { |
Reg = ARM::PC; |
LdmOpc = AFI->isThumbFunction() ? ARM::t2LDMIA_RET : ARM::LDMIA_RET; |
// Fold the return instruction into the LDM. |