diff --git a/lib/Target/ARM/ARMExport.cpp b/lib/Target/ARM/ARMExport.cpp
index 5336f73fc3c36e7ec27cce0c14c5fe18e62f39f2..3409fd5c00d4b8593284b5cb2ddc55875802b0c7 100644
--- a/lib/Target/ARM/ARMExport.cpp
+++ b/lib/Target/ARM/ARMExport.cpp
@@ -50,7 +50,8 @@ namespace llvm {
 
 
     virtual bool doExportInstruction(const MachineInstr *Ins) {
-      return !Ins->isPseudo();
+      return Ins->getOpcode() != ARM::PSEUDO_LOOPBOUND
+          && Ins->getOpcode() != ARM::IMPLICIT_DEF;
     }
 
     virtual void serialize(MachineFunction &MF);