Oops. IT block formation pass needs to be run at any optimization level.
authorEvan Cheng <evan.cheng@apple.com>
Thu, 24 Jun 2010 19:10:14 +0000 (19:10 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Thu, 24 Jun 2010 19:10:14 +0000 (19:10 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106775 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/ARM/ARMTargetMachine.cpp

index e69349de724b0cdfd329a61bb937eb05b1961920..f67ba73d194580537c43e8857b08ad758142f75e 100644 (file)
@@ -105,8 +105,7 @@ bool ARMBaseTargetMachine::addPreRegAlloc(PassManagerBase &PM,
   if (OptLevel != CodeGenOpt::None && !Subtarget.isThumb1Only())
     PM.add(createARMLoadStoreOptimizationPass(true));
 
-  if (OptLevel != CodeGenOpt::None && Subtarget.isThumb2() &&
-      EarlyITBlockFormation)
+  if (Subtarget.isThumb2() && EarlyITBlockFormation)
     PM.add(createThumb2ITBlockPass(true));
   return true;
 }
@@ -128,9 +127,9 @@ bool ARMBaseTargetMachine::addPreSched2(PassManagerBase &PM,
   if (OptLevel != CodeGenOpt::None) {
     if (!Subtarget.isThumb1Only())
       PM.add(createIfConverterPass());
-    if (Subtarget.isThumb2())
-      PM.add(createThumb2ITBlockPass());
   }
+  if (Subtarget.isThumb2())
+    PM.add(createThumb2ITBlockPass());
 
   return true;
 }